余文

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

在之前的开发中,属性只能在构造函数中进行初始化,如果它有定义一个后台字段的话,那这个字段就就可以在定义的地方初始化。C# 6.0 引进了一个Auto-Property initializer机制使属性可以像字段一样在它声明的时候直接初始化。

下面的代码段展示了Auto-Property初始化器是怎么工作的。

public bool MyProperty { get; set; } = false;

这样,MyProperty就被设置了一个默认值false,而不需要在其他地方初始化。这使得我们的代码更干净,更容易理解。

C# 6.0 还允许我们像下面这样创建只读属性。

public bool MyProperty { get; }

这是一个只读属性,到目前为止我们只能使用private set来给它赋值。在C# 6.0中,不需要private set,你可以声明一个属性并且使用自动属性初始化器初始化它。

public bool MyProperty { get; } =false;
posted on 2014-12-18 14:45  余文  阅读(673)  评论(0编辑  收藏  举报