c#
设置公有属性改变私有字段时,实例化对象后还需要给属性默认值,里面的访问器才会产生效果。
public class person { private int age = 32; public int Age { set{age=50;} get{ return age;} } private int height = 170; public int Height { set{ height = 175;} get{ return height;} } } class Program { static void Main(string[] args) { person man = new person(); man.Age = 25; Console.WriteLine("男人的年龄:{0},",man.Age); //男人的年龄50; Console.WriteLine("男人的身高:{0},",man.Height); //男人的年龄170; } }
man.Age给了默认值所以里面的set访问器设置的值起作用,相反属性Height没有给默认值,set访问器没有调用。height值还是170