很多朋友在做web项目升级时,只替换修改类的class文件,而不是整个项目更新,只更新一个类有好处也有坏处,好处就不说了会有很多,坏处呢?下面的事列介绍一种常见的问题。
public class Constant {
public final static int MAX_AOE = 190;
}
public class Client {
public static void main(String []args){
System.out.println("..."+Constant.MAX_AOE);
}
}
一、cmd 中执行如下命令:
javac Constant.java
javac Client.java
java Client
输出结果为
...190
二、修改Constant类中 MAX_AOE为 100
javac Constant.java
java Client输出结果为
...190
看到问题了吧,如果在项目更新中只更新Constant类的class文件会读到脏数据。
而出现这个问题的根本原因是java在编译时为了提高效率final常量直接引用,这也就说明了上面问题的产生原因。
分享到:
相关推荐
Java final关键字的学习demo
java final变量详解 java final变量详解 java final变量详解 java final变量详解
Java中final的深度剖析
自己总结的java中final和static的区别,请大家提出宝贵意见。
java中final和static讲解及实例
Java中的final关键字
Java中final类的简单使用,并对Java关键字的使用做出了总结
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。
java final关键字 java final关键字
java中的final关键字是用来限制用户的。java final 关键字可以在许多上下文中使用
带你深入理解Java中的final关键字_动力节点Java学院整理.
java 关键字final和static
javafinal和static总结.docx
java中final与static的用法
ClassFinal是一款java class文件安全加密工具,支持直接加密jar包或war包,无需修改任何项目代码,兼容spring-framework;可避免源码泄漏或字节码被反编译
Java Persistence API 2.0-final-spec 免费下载
Java 菜鸟必备 详细总结了键字final、static的使用 和限制
内容概要: 本文介绍了Java中final关键字的概念和用法。读者将学习什么是final关键字,为什么需要使用final,以及在不同场景下如何使用final关键字。此外,还会讨论final关键字的一些注意事项和规则。 能学到什么:...
ClassFinal-java class文件安全加密工具
Java中static、this、super、final用法.doc