(1)类加载器
(2)执行引擎
(3)运行时数据区
(4)本地库接口
类加载器:包括启动类加载器、扩展类加载器、应用程序类加载器、自定义加载器。
执行引擎:在执行JAVA代码的时候可能会有解释执行(通过解释器执行)和编译执行(通过即时编译器产生本地代码执行)两种。
运行时数据区:JAVA虚拟机栈、本地方法栈、JAVA堆、方法区、程序计数器、运行时常量池、直接内存
本地库接口:本地方法接口