const成员常量表现得像static量,他们对类的每个实例都是可见的,即使没有类的实例也是可以使用的。与真正的静态量不同,常量没有自己的存储位置,而是在编译时被编译器替换。
const字段和readonly字段的相同的都是在声明语句时初始化。而readonly字段还可以在类的构造函数中初始化,如是static readonly只能在声明时或static构造函数中初始化。
const字段的值必须在编译期决定,而readonly字段的值可以在运行期做决定。这种增加的自由性允许你在不同的构造函数中设置不同的值。
const总是像静态的,readonly字段可以是实例子段,也可以是静态子段,在内存中有存储位置。
|