jvm有版本问题吗

龙之天使 2014-03-05 02:30:31
jvm有版本问题吗?
比如,将jdk1.4编译好的jar包在jdk1.6下直接运行。
很有问题吗?
...全文
137 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
sweetchild1985 2014-03-06
  • 打赏
  • 举报
回复
如果不是必要就不要升级了,除非需要使用1.6中的某些特性,或者要规避1.4中的bug。
龙四 2014-03-06
  • 打赏
  • 举报
回复
会存在一些小问题的,如:

public class Test { 
	public static void main(String... args) {
		String str = args[0]; 
		System.out.println(str.intern() == str); 
	}
}
hotspot1.7和之前的版本运行结果就不一样 又如

 public static void main(String[] args) {  
        Integer a = 1000;  
        Integer b = 1000;  
        System.out.println(a == b);  
          
        Integer c = 1001;  
        Integer d = 1001;  
        System.out.println(c == d);  
          
        Integer e = 20000;  
        Integer f = 20000;  
        System.out.println(e == f);  
    }  
hotspot1.6中上面的代码可以运行出全部为true的结果,或部分false部分true的结果 ---------------- 不过,这都是些无关紧要的问题,这样的代码也几乎不会出现在程序里,so,纯java的话基本可以平滑升级。但如果程序里有直接操作字节码的,印象中hotspot1.7开始改变了字节码验证规则,部分动态生成的类可能会抛错,具体版本忘记了。。
-江沐风- 2014-03-06
  • 打赏
  • 举报
回复
你可以运行一下试试啊,高版本的一般都具有向下兼容的能力!
姜小白- 2014-03-05
  • 打赏
  • 举报
回复
向下应该是兼容的,不过最好还是放在同版本的jdk下面运行。
haha_321 2014-03-05
  • 打赏
  • 举报
回复
应该是向后兼容的吧。。。

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧