静态常量:Const
const int i=100;
i=10;//此时会直接报错:等号左边必须是变量,属性,索引
注意:
1.静态常量Const定义期间必须初始化,并且之后不能进行数据修改,即静态常量不能修改;
2.在编译期间进行初始化;
3.定义时有限制;
4.每个类的实例,静态常量都一样;
5.具有静态属性,是静态的成员,但不需要通过static关键字来定义;
6.编译期间不分配内存;
7.静态常量不能通过构造函数进行修改,只能通过初始化器;
8.可以出现在方法和类中;
动态常量:Readonly
注意:
1.Readonly 是只读变量.属于运行时变量.可以在类constructor里改变它的值.不能作用于局部变量;
2.只能在类中定义,且定义时不能进行初始化,可以在构造函数中进行初始化;
3.定义时没有限制;
4.对于类的不同对象而言,动态常量可以不一样;
5.在运行期间分配内存;
注意:readonly和const达到的效果相同,都是让变量无法再修改;