C#中属性的作用
2013-04-04 13:44
169 查看
在C#中,我们可以非常自由的、毫无限制的访问公有字段,但有时我们可能希望:
(1)限制只能给字段赋于某个范围的值;
(2)或是要求字段只能读或只能写;
(3)或是在改变字段时能改变对象的其他一些状态;
这些只靠字段是无法做到的,于是就有了属性。
属性中包含两个块:set和get,set块负责属性的写入工作,get块负责属性的读取工作。
在两个块中都可以做一些其他操作,如在set中验证赋的值是否符合要求并决定是否进行赋值。
set和get块中属性必需有一个,因为即不能读又不能写的属性是没有意义的。
下面举个简单的例子:
(1)属性可以保证安全,当不在本类中使用时,使用属性名可以避免用字段的名字。
(2)属性的set和get函数可以限制字段的一些功能,以达到某种目的。
(1)限制只能给字段赋于某个范围的值;
(2)或是要求字段只能读或只能写;
(3)或是在改变字段时能改变对象的其他一些状态;
这些只靠字段是无法做到的,于是就有了属性。
属性中包含两个块:set和get,set块负责属性的写入工作,get块负责属性的读取工作。
在两个块中都可以做一些其他操作,如在set中验证赋的值是否符合要求并决定是否进行赋值。
set和get块中属性必需有一个,因为即不能读又不能写的属性是没有意义的。
下面举个简单的例子:
(1)属性可以保证安全,当不在本类中使用时,使用属性名可以避免用字段的名字。
class MyClass { private string name; public string Name { get {return name;} set {name=value;} } }
(2)属性的set和get函数可以限制字段的一些功能,以达到某种目的。
private int a=0; public int A { get{return this.a;} set { if(value >= 0 && value <= 100) this.a=value; else throw new Exception("值的范围不合法。"); } }
相关文章推荐
- C# GET 和 SET属性作用
- c# 属性的作用
- c#属性中get和set的作用
- C#中Dock属性的作用
- c#属性中get和set的作用 c#多窗口 lable控件背景色透明
- 理解C#中属性的概念和作用
- C#中属性与索引器的区别及各自的作用
- C# 中get和set属性的作用
- 读<<CLR via C#>>总结(8) 属性
- Hibernate的cascade属性 特别是 cascadeType.all的 作用
- C#添加属性快捷键、类和对象
- C#中自定义属性的例子
- c#笔记总结--属性与索引器的区别
- C#中SerialPort类对串口供电需要设置DtrEnable 和RtsEnable 两个属性
- [置顶] xmlns:android作用以及自定义布局属性
- C#fixed关键字的作用
- C#中符号的作用备忘
- c#中@的3种作用
- android manifest.xml 中 application下 android:name属性的作用
- c#基础概念之internal 修饰符有什么作用