构造方法、命名空间、String 类、继承、异常捕获


 类的构造方法的重载

一、复习:构造方法的用途

 

类的构造方法可以有多个参数

要实例化一个类,必须调用它(类)的构造方法。

构造方法一般用来初始化类的成员,即对类的属性进行赋值。

二、为什么要使用 构造方法的重载

 确保对象在实例化时有相应的初始值

三、构造方法重载举例

 添加了新的构造方法后

如果需要无参的构造方法,则需要自己来写

四、类图

1.为什么需要看类图?

类有几个构造方法,构造方法的参数都有什么

弄清这2个问题后,我们才能实例化类。

实例化之后才知道哪些属性可以用,哪些方法可以调用。

而我们就不需要知道方法里的内容

  

用别人写的类,我们只需:

1.怎样实例化

2.它有哪些属性

3.它有哪些方法,这些方法是干什么用的,功能是什么。

至于这些方法是怎样实现,我们一般可以不用关心。

 

类图:可以一目了然的知道类的大致情况。

2.通用类图

 

-私有

+共有

3.C#中的类图

 

五、析构函数

 相当于垃圾回收机制 系统自带自运行 了解

六、构造方法的作业

 

可变参数params


任何类型都可以自动转换为object 类型

 最多可传5个参数,超过5个怎么办? 

5个以上参数,统一调用如下版本

数组前加params ,参数传递时自动把多个参数组成一个数组

 下面这样写是不行的 

可变参数必须放在最后,可以这样: 

3课 命名空间 namespace


.net命名空间是逻辑上的层次关系

不是物理上的层次关系 

二、Ctrl+.快速引用命名空间?

三、根命名空间

System

 String  

一、字符串的处理

 字符串的不可变性

二、字符串数组

char[] strs=str.ToCharArray();

三、长度 大小写转换

 

namespace 字符串_string
{
    class Program
    {
        static void Main(string[] args)
        {
            string msg = "helLo,world!", mss = "HELLO,WORLD!";
            if (msg.Equals(mss, StringComparison.OrdinalIgnoreCase))
            {
                Console.WriteLine("这两句话一样");
            }
            char[] msgs = msg.ToCharArray();
            msgs[3] = 'l';
            msg = new string(msgs);
            Console.WriteLine(msg);
            for (int i = 0; i < msgs.Length; i++)
            {
                Console.WriteLine(msgs[i]);
            }
            msg = msg.ToUpper();

            if (msg == mss)
            {
                Console.WriteLine("这两句话一模一样");
            }
            Console.WriteLine(msg);
            Console.ReadKey();
        }
    }

四、常用方法

Length //获得字符串中字符的个数。”aA我你他”→5

方法

IsNullOrEmpty() 静态方法,判断为null或者为””

ToCharArray() 将string转换为char[]

ToLower() 小写,必须接收返回值。(因为:字符串的不可变);

ToUpper()      大写。

Equals()     比较两个字符串是否相同。  忽略大小写的比较,StringComparation.

IndexOf() 如果没有找到对应的数据,返回-1.//面试题:统计一个字符串中,”天安门”出现的次数。

LastIndexOf() 如果没有找到对应的数据,返回-1

Substring() //2个重载,截取字符串。

Split()   //分割字符串。

Join() 静态方法

Format () 静态方法

Replace()  ;

Trim();


str1.Equals(str2,StringComparison.OrdinalIgnoreCase) 

 不分大小写进行比较

五、字符串的分割 Split

 

namespace 字符串分割
{
    class Program
    {
        static void Main(string[] args)
        {
            string str = "2008-08-08",str2="2008/09-02";
            char[] move = { '-','/'};
            string[] date = str2.Split(move, StringSplitOptions.None);
            string[]words =str.Split('-');
            Console.WriteLine("你输入的是{0}年{1}月{2}日",words);
            Console.WriteLine("你输入的是{0}年{1}月{2}日", date[0], date[1], date[2]);
            Console.ReadKey();
        }
    }
}

六 其他常用方法(看MSDN

 

继承

    class Person
    { 
    
    }
    class Chinese : Person
    { 
    
    }

 异常捕获

try-catch

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值