关于get set用法

iurgnaw525 2008-10-04 05:26:42
private int aaa;
public int Aaa
{
get
{
return aaa;
}

set
{
aaa=value;
}
}
向上面这段代码,为什么定义了aaa,还要用get set 他们具体有什么实际用处,好处在哪,为什么写它?
请前辈指教。
...全文
96 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
yuan_1984 2008-10-04
  • 打赏
  • 举报
回复
封装属性,这样做可以控制属性的访问,有利于安全
j_hunter 2008-10-04
  • 打赏
  • 举报
回复
上楼说的够清楚了(~ o ~)~zZ
「已注销」 2008-10-04
  • 打赏
  • 举报
回复
private int aaa;
public int Aaa
{
get
{
return aaa;
}

set
{
aaa=value;
}
}

注意到了对aaa的修饰是私有的,而Aaa是公共的,

也就是外部只能访问Aaa,而Aaa里又不实际存储东西,只读写aaa的值,

很显然Aaa是对aaa的封装,

而通过Aaa访问aaa时可以对数据进行过滤,过滤语句可以写在set 里,
如:要求aaa里只能存储大于100的值,可以这样改写set{}
set
{
if(value>100)
{
aaa=value;
}
}

同理,get语句也可以加类似的过滤语句,不多罗嗦
microchan 2008-10-04
  • 打赏
  • 举报
回复
属性就是方法的变形,让你可以访问对象内部字段值的方法。
a8352081 2008-10-04
  • 打赏
  • 举报
回复
方法里定义的变量外部不是不能访问么?用GET SET就能做到了.
iurgnaw525 2008-10-04
  • 打赏
  • 举报
回复
多谢各位!明白些了
LovingAlison 2008-10-04
  • 打赏
  • 举报
回复
属性定义方式 set表明属性可写
get是获取属性值
aries524 2008-10-04
  • 打赏
  • 举报
回复
同意楼上。。
hengyi82 2008-10-04
  • 打赏
  • 举报
回复
属性使类能够以一种公开的方法获取和设置值,同时隐藏实现或验证代码。get 属性访问器用于返回属性值,而 set 访问器用于分配新值。这样就可以通过属性来访问和设置aaa这个私有变量的值了。

110,538

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧