java不同小版本编译的class文件相同吗
3个回答
展开全部
楼主,你好!
jdk小版本之间的区别主要是修补JRE的BUG和漏洞,也可能是修补java编译器的小BUG。它们编译的class文件几乎完全相同。当然,如果jdk小版本的一次升级只是修补了JRE而没有修补Java编译器,那么这两个版本的java编译器自然编译生成的字节码文件完全相同。
java编译器支持编译特定版本的java源文件,也支持将某版本的java源文件编译为某版本的字节码文件,同时java编译器也支持以指定的字符集解析Java源文件。例如,可以将java6版本的java源文件编译为java5的字节码文件(也就是说,可以在jre5上运行),也可以将java6版本的java源文件编译为java7版本的字节码文件,而这都是由javac的编译选项-source和-target决定的,再例如,可以将使用UTF-8编写java源文件,您也可以使用UTF-16编写Java源文件,这是您需要指定-encoding 编译选项。
jdk小版本之间的区别主要是修补JRE的BUG和漏洞,也可能是修补java编译器的小BUG。它们编译的class文件几乎完全相同。当然,如果jdk小版本的一次升级只是修补了JRE而没有修补Java编译器,那么这两个版本的java编译器自然编译生成的字节码文件完全相同。
java编译器支持编译特定版本的java源文件,也支持将某版本的java源文件编译为某版本的字节码文件,同时java编译器也支持以指定的字符集解析Java源文件。例如,可以将java6版本的java源文件编译为java5的字节码文件(也就是说,可以在jre5上运行),也可以将java6版本的java源文件编译为java7版本的字节码文件,而这都是由javac的编译选项-source和-target决定的,再例如,可以将使用UTF-8编写java源文件,您也可以使用UTF-16编写Java源文件,这是您需要指定-encoding 编译选项。
推荐于2017-09-23 · 知道合伙人软件行家
关注
展开全部
生成的.class字节码文件是完全相同的,所谓的jdk版本高了只是从内部优化上和支持上更加的好,可能说会有一些新的组建。但是不管什么版本,从编译上来看是完全相同的。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
相同,不然怎么兼容老版本?怎么在不同平台移植?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询