类
类的声明
类的访问修饰符可以选择public、private、protected、internal
也可以没有,定义类的时候不使用访问修饰符则默认为internal
类的实例化:创建对象
要在程序中使用对象,需要使用对象所属的类进行实例化
类的定义是对某类事物 的抽象描述,可以看作是事物的图纸,对象则是实际存在的事物,实例化就是连接二者,从图纸生产出实际的事物的过程
Car c = new Car();
类的构造函数
如果没有对变量初始化,则默认变量的初始值为0
1.自动生成的构造函数
2.定义的构造函数
匿名类和嵌套类
1.匿名类:没有类名的临时类,使用该临时类的对象来存储数据,匿名类对象的数据是只读的。使用var来声明,可以实例化
var s1 = new { nema = "张三", age = 12};
2.嵌套类:类中可以包含另一类的称为嵌套类,包含嵌套类的类称为外层类。嵌套类是为外层类服务的,嵌套类可以不受访问修饰符限制而访问外层类的所有成员,外层类只能访问嵌套类为public、internal的成员
类的成员
类的数据成员
类的数据成员指的是在类中定义的常量和变量,其中的变量又称为“字段”。
在类中的某一个函数中定义的变量不是类中的数据成员!
在C#中的数据成员定义通常需要给出访问修饰符,如果没有显示的给出,则系统默认访问修饰符为private
public int a;
类的数据成员分两种,注意与静态变量和非静态变量的不同
(1)静态数据成员:
static public int b;
静态数据成员是类的所有实例共有的,独立于实例存在,可以在类的多个实例直接传递信息
(2)非静态数据成员:
非静态数据成员是类的每个实例私有的,是实例的一部分
静态数据成员引用格式:对象名.数据成员
非静态数据成员引用格式:类名.数据成员
类的方法成员
在类中的函数称为类的方法成员
在类的方法成员中,通常对类的数据成员进行输入输出操作,也可以对类的数据成员进行各种运算
public void add(int x) { 语句序列; }
类的方法成员分两种:
(1)静态方法成员
static public void add(int x) { 语句序列; }
(2)非静态方法成员
静态方法引用格式:类名.方法名(参数列表);
非静态方法引用格式:对象名.方法名(参数列表);
另外还有重载方法成员
类的属性成员
public int age { set{} get{} }属性名为数据成员!!!
索引指示器
当类中的数据成员是一个集合或者数组时,索引指示器将大大化简对数组或集合成员的存取操作
析构函数
C#常用类的操作
Convert类
提供很多静态方法成员,用于数据类型的转换
string类和StringBuilder类
在C#中大写String类和小写string类等同
1.静态方法:使用”string.方法名“格式调用
(1)比较:Compare() (2)复制:Copy() (3)判断:Equals() (4)合并:Join()
2.非静态方法:使用“对象名.方法名”格式调用
(1)比较:CompareTo() (2)判断是否包含子串:Contains() (3)查找子串:IndexOF()
(4)查找字符数组中的字符:IndexOfAny() (5)插入子串:Insert() (6)删除子串:Remove()
(7)替换子串:Replace() (8)拆分子串:Split() (9)去空格:Trim()
3.StringBuilder类:如果要修改字符串而不创建新的对象,且操作次数非常多,则可以使用此类。