1.有什么不同?
Const是编译时常量。也就是说 如果你代码这样写:Const int na;
是不能通过编译的, 编译器会报这个常量必须赋初值。
ReadOnly是运行时常量。
如果你这样写:public static int nb=10;或者 public static int nb;
编译器都不会报错。
此后,你有且只有一次机会能对nb的值进行修改。就是在构造函数里。比如在构造函数里 你改了 nb=20;那么nb就只能是20
如果不改,nb就只是10。
那我们如何选择怎么用?以下的是个人意见:
如果象我们说的圆周率什么的 就用Const 因为我们没改变这个值的必要。
如果说这个圆周率 我们要根据需要取不同的精度, 我以为可以用ReadOnly,在构造函数里设置精度等。如3.14 、3.141、3.1416