在C#中 关于定义和字段的疑问

来源:百度知道 编辑:UC知道 时间:2024/05/06 07:07:41
有一个对象 比如Stu
然后定一个字段和属性privte int age;public int Age
最重要的地方就是为什么不能通过Stu.age=获取值 而是要通过Stu.Age=获取值

private int age;
public int Age
{
get;set;
}

Age属性是对字段的封装,这样可以隐藏代码实现,可以在set块中对传入的值做判断,避免不合法的赋值。可以设置只读(仅有get块)或只写(仅有set块)属性。

例如:

private int age;
public int Age
{
get
{
return age;
}
set
{
//当我们赋值时,逻辑上年龄不能为小于0的值,而且最高不能超过200
if(value<0)
age=0;
else if(value>200)
age=0
else
age=value;
}
}

面向对象的一个非常重要的性质就是封装!!!
把这个对象的字段设为private,这样外部就不能直接访问,而必须通过
它的属性间接访问,达到隐藏的目的。

因为age字段受私有访问限制,你只能在Stu类的内部对其访问。

privte 这个是私有的 所以说只能在内部访问
如果其他 的 要访问 就 要设置成pulic
楼上已经有正解了 我 多余说下

类的封装大多是 私有字段 公有属性,公有方法