作用:
1.作用就是对字段进行封装,类似javabean的用途。没有也可以,但是破坏了OO的封装性。
2.如果只有get和set其中之一的方法的话就实现了对字段的保护。只读或者只写。
(get:读 set:写)
3.举个例子
private string _test;
public string Test
{
get{return _test;}
set{_test = value;}
}
其实和直接声明public差不多的,但是我们以后编程的时候, 例如年龄有个什么限制的话,这个就很有用了,例如:
private int _age;
public int age
{
get { return _age; }
set {
if (value>=10&&value<=20)
_age=value;
else
Console.WriteLine("年龄不适合!!!");
}
}
其实属性的一个大用处就是set,在赋值前,先判断这个值是否符合程序的要求。 如果按原先写的那样,跟public没什么区别。
主要用处是封装,而封装之后,则便于今后的扩展!
可能刚开始,你只是用这个 age 值,不关心其合法性,但如果到后面,你发现要去检查它的合法性时,这时,你外部用到这个 age 值的地方都不需要改动,只需要修改这个属性操作即可。 所以,在绝大多数情况下,还是使用属性的好,即使仅仅是一个简单的值,但说不定哪天就需要你或别人去维护了! 当然,你如果只做一锤子买卖,而且确信今生再也不会同这段代码打交道了(包括也不会有别人因为这段代码来麻烦你),那么,随便你怎么写都可以的