前因:在一次系统升级时,变更了Constants.java中的public final static TTT的值,由原来的“test”变更成了“test1”,一个Test.java刚好也引用了这个TTT静态常量,做系统更新时,只更新了静态常量的那个类,结果一直看不到效果!
缘由:静态常量导致的问题,更新静态常量时,要同时更新引用该静态常量的类,并确保该类已经重新编译。因为静态常量被引用时,在编译期就已经确定了值,在运行期不会动态加载对应的值。
前因:在一次系统升级时,变更了Constants.java中的public final static TTT的值,由原来的“test”变更成了“test1”,一个Test.java刚好也引用了这个TTT静态常量,做系统更新时,只更新了静态常量的那个类,结果一直看不到效果!
缘由:静态常量导致的问题,更新静态常量时,要同时更新引用该静态常量的类,并确保该类已经重新编译。因为静态常量被引用时,在编译期就已经确定了值,在运行期不会动态加载对应的值。
转载于:https://my.oschina.net/u/1753237/blog/226362