1、类的组成
1)、语法
访问修饰符 class 类的,名称
{
//字段部分
//属性部分
//方法部分
}
※一个类可以只有属性,只有方法,也可以属性和方法都有,但是不建议只有字段的类。
2)、类的概念
类的基本概念:在一个事务中,把我们所要关心的特性(属性)和行为(方法)抽取出来,组合到一起,就称为一个类。
※:访问修饰符:internal:内部的。在当前程序集使用(exe和类库)。
public:外部的。可以在程序集外使用。
对象的创建(关键字new):以类为模板,给它赋值具体的数据。
2、属性(Property)
1、自动属性
Public int EquId {get;set;}
2、标准属性
privte int _equId;
Public int EquID
{
get{ return _equId ;}
set{ _equId=value ;}
}
3、自动属性与标准属性的对比
1)、通过ILDasm反汇编工具,可以发现自动属性中的get和set其实是两个方法,并且没一个属性都有对应的私有字段。
2)、通过断点调试标准属性可以发现,给属性赋值时,其实调用的是set方法,将值赋值到对应的私有字段。读取属性值其实是调用get方法,将对应私有字段的值拿出来。
※)、属性本身并不保存数据,数据保存在对应的私有字段中。属性是外界访问私有字段的接口。
4、属性的扩展
1)、增加业务判断逻辑。(可以在get、set中增加业务判断逻辑)
2)、设置只读字段功能。(可以只有get,只读取数据)
3)、设置只读业务逻辑(可以没有私有字段)
5、属性与字段对比
1)字段:又称为“成员变量”。
(扩展:方法类的变量=局部变量。类内部,方法外部=成员变量。)
【1】目的:字段是为类的内部方法,或者方法之间传递数据使用,强调对内使用。
【2】修饰:字段一般为private,很少使用public。
【3】读写:字段可以读写均可,也可以用readonly限制为只读,但是不能添加业务逻辑。
2)属性
【1】:目的:属性是对外提供数据访问,本身不保存数据,强调对外使用。
【2】:修饰:属性都是public。
【3】:读写:属性可以轻松实现单独读写,斌且可以添加任意需要的业务逻辑。
【4】:强制:dgv列表必须强制使用属性,不能使用公有字段。
结论:开发中,只要对外使用数据,都用属性,即使没有任何扩展业务。不建议使用public字段。