只读字段

为了保证对象的字段不嫩改变。

使用readonly修饰符声明。

只能在构造函数中分配值。

可以是类的成员,需要把static修饰符分配给该字段。

例如:

 1 /// <summary>
 2 /// 获取Web.config配置文件,例如数据库连接字符串等
 3 /// 只需要在应用程序启动时获取一次就可以了
 4 /// 所以使用静态构造函数
 5 /// 最好将字段定义为private,使用属性来访问字段
 6 /// </summary>
 7 public class ConfigSettings
 8 {
 9     /// <summary>
10     /// 不一定非得在构造函数中赋值,否则就是字段类型的默认值,例如int则是0,bool则是false...
11     /// </summary>
12     private static string _db;
13 
14     public static string Db
15     {
16         get { return _db; }
17         set { _db = value; }
18     }
19     static ConfigSettings()
20     {
21         _db = ConfigurationManager.ConnectionStrings["Db"].ConnectionString;
22     }
23 }

以上代码最终可简化为:

 1 /// <summary>
 2 /// 最终简化,使用自动属性
 3 /// </summary>
 4 public class ConfigSettings
 5 {
 6     public static string Db { get; }
 7     static ConfigSettings()
 8     {
 9         Db = ConfigurationManager.ConnectionStrings["Db"].ConnectionString;
10     }
11 }

 

posted @ 2020-04-12 18:16  VTing4You  阅读(239)  评论(0编辑  收藏  举报