标签:c style class blog code java
1 /// <summary> 2 /// 字段、方法、属性都可以叫做类的成员Member,它们都需要定义访问级别。 3 /// 访问级别的用处在于控制成员在哪些地方可以被访问,这样达到面向对象中“封装”的目的。 4 /// public:公共成员,完全公开,没有访问限制; 5 /// private:默认级别。私有成员, 在类的内部才可以访问; 6 /// internal:当前程序集内可以访问; 7 /// protected:保护成员,该类内部和继承类中可以访问。 8 /// </summary> 9 class Person 10 { 11 //private字段 12 private int height; 13 //public属性//属性不会存储值,而是由相应的字段保存值(height=Value); 14 public int Height 15 { 16 get { return height; }//只有get是只读属性 17 set { height = value; }//只有set是只写属性,不常见 18 } 19 20 //【1】private属性和public字段的区别是什么? 21 22 //private属性属性看似字段、不是字段。可以设置只读,可以对设值、取值的过程进行非法值控制。比如年龄禁止设值负数。 23 //而字段则不能进行这样的设置。 24 25 //【2】调用set方法为一个属性设值,然后用get方法读取出来的值一定是set进去的值吗? 26 27 //虽然一般情况下get读取的值就是set设置的值,但是可以让get读取的值不是set设置的值的。 28 //极端的例子: 29 public int Age { get { return 100; } set { } } 30 31 //Person p = new Person(); 32 //p.Age = 30; 33 //p.Age++; 34 //Console.Write(p.Age);//输出100 35 36 //加分的补充回答:用reflector反编译可以看出,属性内部本质上就是set_***、get_***方法。 37 }
OOP 2014年6月8日09:45:33,布布扣,bubuko.com
标签:c style class blog code java
原文地址:http://www.cnblogs.com/skyl/p/3775779.html