字段与属性

 

  

 1    class Clerk
 2     {
 3         // 属性的get和set方法包含在属性声明中
 4         // get属性访问器用于返回属性值
 5         // set属性访问器用于分配新值
 6         // 字段:采用_camelCase命名方式
 7         // 属性:采用PascalCase命名方式
 8         private string _name;    // 这里是一个字段 可存放多个值,变量只存放一个值
 9         public string Name
10         {
11             get;
12             set;
13         }
14         private char _gender;
15         // 这是一个属性,有了属性后我们往往通过属性来访问一个字段
16         // 属性一般用public,字段用private
17         // 在外部访问类的字段,都是通过属性来完成的
18         public char Gender      
19         {
20             get { return _gender; }     // get可用于对取值进行限定
21             set { _gender = value; }    // set可用于对赋值进行限定
22         }
23         private int _age;
24         // 通常将get与set称为访问器
25         // 属性分为4类:
26         // 1)既读又写,同时包含get,set
27         // 2)只读,只包含get
28         // 3)只写,只包含set
29         // 4) 自动属性, get;set;
30         public int Age
31         {
32             get { return _age; }
33             set
34             {
35                 if (value < 0 || value > 120) value = 0;
36                 _age = value;
37             }
38         }
39         private string _department;
40         public string Department
41         {
42             //自动属性
43             get;
44             set;
45 
46         }
47         private int _workYears;
48         public int WorkYears
49         {
50             get;
51             set;
52         }
53 
54         public void Write()
55         {
56             Console.WriteLine("我叫{0},性别{1},我的年龄是{2}, 我的部门是{3},我的工作年限{4}。", this.Name, this.Gender, this.Age, this.Department, this.WorkYears);
57         }

 

posted @ 2017-05-07 12:07  晨光一点  阅读(622)  评论(0编辑  收藏  举报