C#中属性的目的是对字段的封装,是为了程序数据的安全性考虑的。本文即以实例形式对C#中只读只写属性进行剖析。
对于只读或只写的属性定义:
1、不写入其中一个get/set方法即可只读或只写
比如:
private int a;public int A{get{ return a; }}
2、用private进行保护,类外同样意味着只读或只写
比如:
private int a;public int A{private get{ return a;}set{ a = value;}}
这里需要注意的是,这样定义的属性是在 C# 3.0 和更高版本中,当属性的访问器中不需要其他逻辑时,自动实现的属性可使属性声明更加简洁。
编译器将创建一个私有的匿名支持字段,该字段只能通过属性的 get 和 set 访问器进行访问,
public int A{get;set;}
切记!这样是无法省略其中一项(get/set)进行只读或者只写的.
但是用private保护就可以:
public int A{get;private set;}
新闻热点
疑难解答