先编译后运行的,const和readonly虽然都不能改变值,量const是常量,而readonly却是修饰变量,二者有本质区别。另外static readonly修饰的变量好像是在编译时赋值吧?它可以在运行时赋一次值。
readonly可在三种条件下重复赋值:1,编译时直接赋值;2,实参构造器赋值;3,静态构造器赋值。以下条件例外:1,构造器内部的匿名方法2, class A{readonly int x; A(A, a){ this.x=1; //对 a.x=1 //错