您的位置:首页 > 编程语言 > Java开发

JAVA开发陷阱第二篇(莫让常量蜕变成变量)

2014-01-01 22:39 274 查看
建议:莫让常量蜕变成变量

常量蜕变成变量?不可能!你开玩笑的吧?

我当然不是开玩笑的。

接下来就是见证奇迹的时刻:

public class Client{

       public static void main(String[] args){

        System.out.println("常量的值开始改变了:"+Cont.A);

   }



//接口常量

interface Cont{

    public static final int A=new Random().NextInt();

}

这个是常量吗?它的值真的会改变吗?

那我说这是常量,确实可以改变。不过这种声明方式是极不可取的,常量就应该在编译期确定其值。不应该在运行期再确定。否则程序的可读性会非常的差,甚至连自己都不相信会发生这种神奇的事,

千万别想着利用常量的一特点来实现产生序列号。随机种子等一些列问题。除非项目中这是唯一的选择,否则放弃这种做法。

务必让常量在运行中保持不变
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息