c#中的get和set的用法,希望结合代码解释!

问题描述:

c#中的get和set的用法,希望结合代码解释!
刚入门很的不理解,希望各位详细讲解(含代码)
1个回答 分类:综合 2014-10-04

问题解答:

我来补答
一般面向对象编程语言都要求成员变量不能直接暴露给外部访问,如下:
public class A
{
public int Age; //这是不好的,待会有程序员可能把-1赋给Age
}
为了防止乱赋值,C#设计了一个属性机制,要求把成员变量设为私有,在通过属性来控制成员变量的读写,如下:
public class B
{
private int age; //私有成员变量
public int Age //age的属性
{
get{ return age; } //读取器
set{ //写入器
if(value>0)
age = value; //value是准备写入的值
}
}
}
这样Age就像保安一样,挡在age的前面.访问age的时候需要通过Age许可,如下:
B b = new B();
b.Age = -1; //这是不行的,-1被带入value,value
 
 
展开全文阅读
剩余:2000