java 虚拟机是由jdk提供的一个软件程序。虚拟机的任务是执行java程序。 java 虚拟机封装了底层操作系统的差异,不管在哪个平台上,都按以下步骤运行程序:
1. 把.class文件的二进制数据加载到内存中 。
2 .对类的二进制数据进行验证。
3. 解析并执行指令。
java 虚拟机提供运行时环境,运行时环境最重要的一个资源是运行时数据区,运行时数据区是操作系统为JAVA虚拟机进程分配的内存区域,java虚拟机管理着这个区域,它把这个区域分为多个子区域:堆区、方法区、JAVA栈区等。在堆区存放对象,在方法区存放类的类型信息,类型信息包括静态变量和方法信息。方法信息包含类的所有方法的字节码。