C#属性和索引器中的value

来源:百度知道 编辑:UC知道 时间:2024/06/24 05:02:57
完全不是怎样用的,请高人详细地解释下.

如 public int x
{
get {return in;}
set {in=value;}
}

当有语句如:x=36;
value值就为36,通过set将value赋值给in,get的作用即:将in的值返回给属性x。

private int age;//字段(私有,小写)
public int Age;//属性(公有,大写)
{
get{return age;}
set{age=value}
}
get是读属性,用于返回值,如果只有get没有set就是说数据是只读的,别人无法修改。
set是写属性,可以修改属性值,是数据更准确,比如说年龄一般规定为0-118岁,如果只是字段你可以给它赋值-1,200,甚至10000,语法没有错,只是逻辑有错误,但是用了set就可以避免了
private int age;//字段(私有,小写)
public int Age;//属性(公有,大写)
{
get{return age;}
set
{
if(value>0&&value<=118)
age=value;
else
age=18;
}
}
这样你如果输入0-188之间的数他就是你输入的数字,如果不在这个范围内,就输出18岁,关于索引器可以跟数组和泛型想比较,数组是用下标查找数据,索引器是用键值查找,可以用一个对象的姓名或者学号什么的来查,用起来比较方便,不容易出错。