zerorealm

导航

006Java程序运行机制

006Java程序运行机制

高级程序语言分为编译型和解释型两种,Java这两种特性都具备。

编译型还是解释型取决于翻译的时机

以看一本外语书为例:

  • 编译型:先把整本书翻译成中文版再看。
  • 解释型:请个翻译官,看一句翻译一句。

编译型由于是全部编译好再交系统执行,因此执行性能较高,通常用于开发操作系统等,典型语言是C/C++。

解释型由于是边解释边执行,因此速度没有那么高,适合网页等对速度要求不高的地方使用,典型语言是Java/Python。

Java在执行前,会通过Java编译器进行一次预编译,生成介于Java源代码与机器码之间的字节码文件(class文件),字节码文件运行的时候会被放进类装载器里面,这样就进入JVM虚拟机里面了。随后数据进入字节码校验器,用于校验程序有没有写错。最后通过一个解释器解释给操作系统,解释一步运行一步。

随着技术的发展,编译型与解释型的界限变得越来越模糊,很多语言既有编译型的特征又有解释型的特征。

posted on 2022-10-10 16:58  灯火喧嚣  阅读(3)  评论(0编辑  收藏  举报