以前使用这种方式声明属性的人 -
private int _idd;
public int idd {
get {
return _idd;
}
set
{
_idd = value;
}
但现在有一天他们这样宣布 - 我很想知道私有领域的去向以及如何使用高级方法来使用这种类型的属性。什么是私人薪水领域?私人领域的薪水在哪里?
public int salary { set; get; }
我如何使用此属性 - 如何获取和设置此属性。
答案 0 :(得分:1)
“新”方式称为自动属性,后备字段由CLR创建。
在您的工资情况下,私人字段将被称为_salary
http://msdn.microsoft.com/en-us/library/bb384054.aspx
在C#3.0及更高版本中,自动实现的属性生成 当不需要额外的逻辑时,属性声明更简洁 在物业访问者。它们还使客户端代码能够创建 对象。声明属性时,如下所示 例如,编译器创建一个私有的匿名支持字段 只能通过属性的get和set访问器访问。
答案 1 :(得分:1)
它们被称为'Auto-Implemented Properties',在C#3.0中引入。当您声明这样的属性时,编译器将自动为您生成一个私有支持字段。
您可以像使用其他任何属性一样使用它们,您只需直接获取或设置属性,而不是字段:
instance.salary = 100;
Console.WriteLine(instance.salary); // 100