java虚拟机原理及工作原理都是什么?java虚拟机如何运行?

我们都知道,java是跨平台的,能够成为时代最火热的编程语言之一,它的跨平台机制功不可没,它的跨平台机制主要就是靠的java虚拟机,这是它能够跨平台的核心功能,那,小伙伴们知道java虚拟机的工作原理是什么吗?Java虚拟机它是如何运行的呢?下面就让小编为你们说道说到。

一、java虚拟机工作原理

在java虚拟机中,程序员编译之后的class文件其实是作为Java虚拟机中的质料被输入到Java虚拟机的内部的,那么,具体会由谁来做这一部分工作呢?类加载器!Java虚拟机的内部有着一个叫做类加载器的子系统,这个子系统会用来在程序运行时根据需要加载类。注意:是“根据需要”。Java虚拟机执行过程中,只有在它需要一个类的时候,它才会调用类加载器来加载这个类,而并不是在开始运行时就加载所有的类。举个例子:就像你吃饭一样,你只有在饿的时候才会去吃饭,总不能一次把一辈子的饭都吃完,然后接下来一辈子都不吃饭了吧。所以,一般来说,虚拟机加载类的时机,就是在第一次使用一个新的类的时候。

Java中由虚拟机加载的类,在被加载到Java虚拟机内存中之后,虚拟机就会读取并执行它内存里存在的字节码指令。虚拟机中执行字节码指令的部分被叫做执行引擎。唔,大概就像你吃饭,吃完饭总要消化的,不能一直吃下去,执行引擎就相当于人的胃一样。java虚拟机在执行过程中还会把各个class文件动态的连接起来。

如图:

java虚拟机原理 工作原理  java虚拟机如何运行

二、Java虚拟机运行流程

程序执行流程我们可以把它划分为以下几个步骤:编辑源码、编译生成class文件、加载class文件、运行class字节码文件,其中后两个步骤都是在java虚拟机上执行的。

java虚拟机原理 工作原理  java虚拟机如何运行

以上就是关于java虚拟机工作原理及运行流程的全部内容了,小伙伴们如果还想了解更多相关java入门知识的话,就一定要关注我们的网站啊。

推荐阅读:

java虚拟机是什么?基本结构是怎样的?

java虚拟机的作用是什么?我们为什么要用虚拟机?

java虚拟机安装如何实现?步骤从下载开始