如下代码:
public class Age
{ private int ageNum ; public int AgeNum {
get{
return this.ageNum;
} set{
this.ageNum = value;
}
} public int getAgeNum(){
return ageNum;
} public void setAgeNum(int age){
this.ageNum = age;
} }
在Main中做如下操作:
Age age = new Age ();
age.setAgeNum ();
Console.WriteLine ("age=" + age.AgeNum); age.AgeNum = ;
Console.WriteLine ("age=" + age.getAgeNum());
输出:
age=234
age=122
但如果将 set get 采用简写方式,代码如下
public class Age
{ private int ageNum ; public int AgeNum { set; get;
} public int getAgeNum(){
return ageNum;
} public void setAgeNum(int age){
this.ageNum = age;
} }
Main中内容不变,得到如下结果
age=0
age=234
如果修改Main中代码顺序如下
age.AgeNum = ;
Console.WriteLine ("age=" + age.getAgeNum()); age.setAgeNum ();
Console.WriteLine ("age=" + age.AgeNum);
结果为
age=0
age=122
-------------------------------------------------------- 更新 -------------------------------------------
时间:2016/09/19
仔细思考后,ageNum 和 AgeNum 两者实际上并无关联。
使用
public int AgeNum {
get{
return this.ageNum;
} set{
this.ageNum = value;
}
}
实际上就是等同 java 中的getValue和setValue。
而使用 set;get简写的方式,操作的是AgeNum,与ageNum没有任何关系。