谈谈你对java平台的理解
java是跨平台的语言,主要体现在java源代码经过javac编译成.class文件,然后经过jvm编译或解释为机器码文件。
有人说java既是编译型语言,也是解释型语言,主要是基于以下几点:
1.解释:.class文件经过jvm内嵌的解释器,将其转换成为机器可以执行的机器码文件(逐行解释,效率低下)
2.编译:存在jit编译器(just intime compile)即时编译器,把经常运行的代码作为热点代码编译为与本地平台(操作系统)相关的机器码,并进行各种层次的优化。
3.aot编译器:java9提供的直接将所有代码编译成为机器码。
源程序->java编译器->.class文件->类加载器->字节码文件校验器->解释器(或者jit即时编译器)->操作系统平台(机器码)
jvm的存在使java有了“write once,run anywhere”的基础。

浙公网安备 33010602011771号