java运行机制

几天面试遇到一个这样问题,回答不是很好,这里做个归纳。

java程序运行时,必须经过编译和运行两个步骤,首先将后缀名.java的源文件进行编译,最终生成.class的字节码文件,然后java虚拟器将字节码文件进行解释执行。

比如:Hello World.java的文件

最后执行java Hello World 命令启动java运行程序,java虚拟机首先将编译好的字节码文件加载到内存,这个过程叫做类加载,是由类加载器完成的,然后虚拟机针对加载的到内存的java类进行解释执行,便可看到结果。

可以得出,java程序是由java虚拟机负责解释执行的,而并非操作系统,这样可以实现跨平台,针对不同的操作系统可以编写相同的程序,只需安装不同版本的虚拟机即可。

对于java虚拟机想了解更多可以参考下面这篇文章,讲的非常通俗易懂。

http://blog.csdn.net/zhangjg_blog/article/details/20380971

原文地址:https://www.cnblogs.com/shamoguzhou/p/7011365.html