Android工程师学习JVM(一)-JVM概述

1,232 阅读1分钟

JVM: Java Virtual Machine,通过软件来模拟Java字节码的指令集,是Java程序的运行环境

1、从开发到运行期间JVM所处的位置

从上图看,我们开发java程序到执行起来,一共有以下步骤

1、编写java源代码-由开发人员执行

2、java源代码编译成java虚拟机的输入,即java字节码-由javac执行

3、java虚拟机根据java字节码,执行响应的操作系统指令

4、操作系统执行具体硬件指令

2、JVM主要功能

1、通过ClassLoader寻找和装载class文件

2、解释字节码成为指令并执行,提供class文件的运行环境

3、进行运行期间的内存分配和垃圾回收

4、提供与硬件交互的平台

3、虚拟机是Java平台无关的保障

从上图看,我们可以得出以下结论:

1、我们开发是平台无关的。

2、Java虚拟机是平台相关的。不同的平台,Java虚拟机需要执行不同的操作。

3、装载进Java虚拟机的是Java字节码,不是java源代码。可以得出一个特性,开发语言无关。不一定得用java源文件才能编译出class文件。比如现在市面上的jRuby、jPython等语言都可以编译出class文件供java虚拟机执行