get的真正目的是什么,在c#中设置属性?

可能重复:
属性与方法
C#:公共字段与自动属性

  • get的真正目的是什么,在c#中设置属性?
  • 我应该什么时候使用get,设置属性…

您需要它们来控制对象的私有字段值。 例如,如果您不想允许整数的空值或负值。 此外,封装对于触发对象成员值更改时的事件非常有用。 例

bool started; public bool Started { get { return started; } set { started = value; if (started) OnStarted(EventArgs.Empty); } } 

另一个例子

  int positiveNumber; public int PositiveNumber { get { return positiveNumber; } set { if (value < 0) positiveNumber = 0; else positiveNumber = value; } } 

并且只读属性的另一个实现可以如下

  int positiveNumber; public int PositiveNumber { get { return positiveNumber; } } 

你的意思是只有属性或关键词get; set; get; set;

属性 :简单来说,属性是智能领域。 聪明的是,您可以在想要获取或设置值时添加逻辑。 用法示例:如果要validation要设置为属性的值,或者是否要组合来自不同字段的值而不将这些字段公开给公众。

关键字 :这是一个C#简写,用于创建具有支持字段的属性(存储值的字段)。 当您启动新代码并希望尽早完成界面时,它非常有用。