字段与属性
字段:一般在类的内部做数据交互使用,首字母小写表示,一般用 private 修饰
属性:描述对象的静态特征,数据类型要和对应的字段一致,首字母大写表示,一般用 public 修饰
:属性就是外界访问私有字段的入口,属性本身不保存任何数据,本质是一个方法,对属性赋值和读取就是操作对应私有字段
1 class Student 2 { 3 private string StudentName = string.Empty; // 字段 4 5 public string Student // 属性 6 { // 访问器 7 get{return StudentName;} // 读取数据 8 set{StudentName = value;} //写入数据 9 } 10 } 11 Student S1 = new Student(); 12 S1.Studeng = "ZhangSan"; // 相当于调用方法
属性的作用:避免出现非法数据,限定属性只读或者只写
1 class Student 2 { 3 private int age; 4 5 public string Age 6 { 7 get{return age;} 8 set
9 { 10 if(value<0)
11 { 12 age = 18; 13 } 14 else 15 { 16 age = value; 17 } 15 }
19 } 20 }
抽象属性类似于抽象方法,继承后在子类中重写
1 public abstract class Person 2 { 3 public abstract string Name 4 { 5 get; // 只能声明 6 set; 7 } 8 } 9 class Student : Person 10 { 11 private string name = string.Empty; 12 13 public override string Code {get;set;} // 自动属性 14 }