Java代码有很多运行方式。
在开发工具中运行
双击jar文件运行
在命令行中运行
在网页中运行
当然,上述运行方式都离不开JRE, 也就是Java运行时环境。
JRE仅包含Java程序的必须组件,包括Java虚拟机以及Java核心类库等。
而我们Java程序员经常接触到的JDK(Java开发工具包)同样包含了JRE, 并且还附带了一系列开发、诊断工具。
然而,运行C++程序则无需额外的运行时环境,C++编译器往往把C++代码编译成CPU能够理解的机器码。
那么,既然C++的运行方式如此成熟,我们为什么要在JVM里运行Java代码呢?
为什么Java要在虚拟机里运行?
Java作为一门高级程序语言,它的语法复杂,抽象程度也很高。因此在硬件上运行Java代码并不现实,所以运行Java程序之前,我们需要对其进行一番转换。
当前进行转换的主要思路是:设计一个面向Java语言特性的虚拟机,并通过编译器将Java程序转换层该虚拟机所能识别的指令序列(Java字节码)。之所以这么取名,是因为Java字节码指令的操作码被固定成一个字节。
Java虚拟机可以由硬件实现
试看链接:https://pan.baidu.com/s/1A4EMejm4G4t4ZTok6vIITA 提取码:zwul
完整版下载:百度网盘