关于应用服务器中class文件替换时遇到的小问题

前些天,修改了CONTANT文件中静态常量的值,重新编译后只替换了该文件,重启服务器后发现修改的地方并没有生效。

经过一天多的纠结也排查,最后发现使用该CONTANT文件的静态常量的其他class文件中并没有值的改变。

最后经过查询资料得知:

静态常量(即用 static final 修饰的变量)是编译时常量,当一个class文件编译完毕,它内部使用到的所有常量的具体值就已经确定了,不能想当然地以为它在运行时并连接常量管理类之后才会以引用方式使用常量。

所以尽量不要使用静态常量,用属性文件来代替。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值