《编写高质量代码:改善Java程序的151个建议》之建议二。
学习
让变量蜕变成变量的实现:1234567891011class Ideone{ public static void main (String[] args) throws java.lang.Exception { System.out.println("常量会变哦:" + Constt.RAND_CONST); }}interface Constt{ public static final int RAND_CONST = (int)(Math.random() * 10);}
评论
这个建议有点标题党了,这只是常量在初始化时使用了一个随机数而已,还以为真的有什么黑科技可以去修改常量的值。实际中真的会有人这么使用常量么?作者是这么说的:
甭想着使用变量会变的功能来实现序列号算法、随机种子生成,除非这真的是项目中的唯一解决方案,否则就放弃吧,常量还是当常量使用。