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

吶妞羙 3个月前 已收到1个回答 举报

蹦蹦床 2星

共回答了67个问题采纳率:99.7% 评论

一般面向对象编程语言都要求成员变量不能直接暴露给外部访问,如下:

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

b.Age = 10; //这是可行的

15小时前

6
可能相似的问题
Copyright © 2024 微短问答 All rights reserved. 粤ICP备2021119249号 站务邮箱 service@wdace.com