const,readonly,static

1.const 表示的是常量(constant),始终不会发生改变,在编译时就确定了。所以类中定义一个常量可以被类访问也可以被类的实例访问。定义时就不能和static一起用。如果用了也是没有作用的,所以语法就规定其是无效的。在声明时同时初期化

  private const string Name="abc";

2.readonly 值在运行期决定,有一次确定其值的机会。其是可以被类访问还是类的实例访问,就看static。可以和static一起使用,这与一般数据成员一样。可以在两类地方赋值,可以声明时同时初期化也可以在构造函数中初期化。如果是static字段,就必须在static构造函数中初始化。

原文地址:https://www.cnblogs.com/niaomingjian/p/3764320.html