标题:一个有关C#中属性get/set的问题?
只看楼主
海萤光
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-4-3
 问题点数:0 回复次数:3 
一个有关C#中属性get/set的问题?
我刚接触C#,在属性get/set部分,课本上说,set可以起到校验数据的作用,我感觉是通过属性来访问私有字段,但看不出set哪里可以起到校验作用。例如:
……
public class Student
{
private string internal_sId;
public string sId
{
get
{
return internal_sId;
}
set
{
internal_sId = value;
}
}
}
如果我向里面输入整数类型的数据,它怎样完成校验呢?
请指点!!!
谢谢!
搜索更多相关主题的帖子: get set sId internal string 
2007-04-03 09:15
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 
你想看出来什么???

飘过~~
2007-04-03 10:50
海萤光
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2007-4-3
得分:0 
校验啊?
set
{
internal_sId = value;
}
定义属性不就是为了保护私有字段,防止不正规的的输入。
那现在定义了属性,数据只不过由原来的直接访问字段,变成先访问属性再进入字段,多了一步而已,看不出有什么优势。
set的保护作用到底体现在哪?如何校验输入的value。

2007-04-03 12:00
bygg
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:乖乖的心中
等 级:版主
威 望:241
帖 子:13555
专家分:3076
注 册:2006-10-23
得分:0 
你还是先看看帮助吧...

飘过~~
2007-04-03 12:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-128815-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.740371 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved