/*属性由于面向对象的封装特性,通常不会把字段设置成public
* 就需要我们把字段添加赋值和取值的方法,但是手写
* * get和set比较麻烦 所以程序就自动帮我们封装了这两个方法 也就是属性
* 格式
* 访问修饰符 属性类型 属性名
* get{
* 属性返回值
* }
* set{
* 设置属性值
* }
* 访问修饰符:
* 约束属性的可见度
* 属性类型和对应字段的类型一致,属性名首字母大写,和字段区分
* set方法:取值操作 访问器 直接返回对应的字段的值
* get:赋值操作 设置器 获取隐藏参数value中储存的数值,来设置给对应的字段
* 属性的优势:提高数据的安全和灵活性
* value:属性生成的方法不带参数 需要 value当做参数
* 来给字段赋值,value中储存的就是用户通过属性设置的值
* 属性和字段的区别:
* 在C#中 可以毫无限制的访问公有字段,但在一些特定场合下,
* 我们希望可以限制只能给字段某个范围的值
* 或者是要求这个字段只能在外界可读或者可写,
* 这些情况下单靠字段是不能做到的,于是出现了属性
: */
class Rectangle
{
private int width;
private int height;
public int XYpoint
{
get
{
return this.height ;
}
set
{
height = value;
}
}