java源文件运行机制

java源文件运行机制

1、前言:

首先,我们编程都是用的高级语言(写汇编和机器语言的大牛们除外),计算机不能直接理解高级语言,只能理解和运行机器语言,所以必须要把高级语言翻译成机器语言,计算机才能运行高级语言所编写的程序。

计算机高级语言主要有编译型和解释型两种。

1、编译型的语言

编译性语言代表:C、C++、Pascal/Object Pascal(Delphi)等;

特点:

典型的就是它们可以编译后生成.exe文件,之后无需再次 编译,直接运行.exe文件即可;

2、解释型的语言

解释性语言代表:Python、JavaScript、Shell、C#、Ruby、PHP、MATLAB等等;

特点:

程序不需要编译,程序在运行时才翻译成机器语言,每执行 一次都要翻译一次。因此效率比较低。在运行程序的时候才翻译,专门有 一个解释器去进行翻译,每个语句都是执行的时候才翻译。效率比较低, 依赖解释器,跨平台性好.

JAVA语言是编译型和解释型的结合,所以其具备了编译型语言和解释型语言的所有特点。

2、Java应用程序的运行机制

java是通过javac.exe编译成.class文件 然后通过jvm加载.class文件,然后调用java.exe执行文件。

图解:

app java 源程序 java源程序运行_java


3、JDK、JRE、JVM区别与联系

JVM :英文名称(Java Virtual Machine),就是我们耳熟能详的 Java 虚拟机。它只认识 xxx.class 这种类型的文件,它能够将 class 文件中的字节码指令进行识别并调用操作系统上的 API 完成动作。所以说,jvm 是 Java 能够跨平台的核心。

JRE :英文名称(Java Runtime Environment),我们叫它:Java 运行时环境。它主要包含两个部分,jvm 的标准实现和 Java 的一些基本类库。它相对于 jvm 来说,多出来的是一部分的 Java 类库。

JDK :英文名称(Java Development Kit),Java 开发工具包。jdk 是整个 Java 开发的核心,它集成了 jre 和一些好用的小工具。例如:javac.exe,java.exe,jar.exe 等。

关系:JDK>JRE>JVM。

图解:

app java 源程序 java源程序运行_java_02


4、参考文献:

1、编译型语言和解释型语言

2、编译性语言和解释性语言的区别

3、弄懂 JRE、JDK、JVM 之间的区别与联系

java源文件运行机制相关教程