JVM,什么是JVM?
Java语言虚拟机后,Java语言在不同平台上运行时不需要重新编译。Java语言使用Java虚拟机屏蔽了与具体平台相关的信息,使得Java语言编译程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台上不加修改地运行。
Java虚拟机在软件层层面屏蔽了底层硬件、底层指令的细节。
跨平台:程序可以运行基于不同平台版本的jvm就可以了。
数据类型
Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。基本类型的变量保存原始值,即:他代表的值就是数值本身;而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。
基本类型包括:byte,short,int,long,char,float,double,Boolean
引用类型包括:类类型,接口类型和数组。
App.java 源码
编译时环境(jdk)
App.class 字节码
JVM
Java虚拟机:在软件层层面屏蔽了底层硬件、底层指令的细节。 运行时环境 (jre)
操作系统可以运行的文件 机器码
类加载器 ClassLoader JVM将class文件加载至内存模块。
运行时数据区 Runtime Data Area
线程共享区: Heap堆, Method Area方法区
线程独占区: 程序计数器,虚拟机栈,本地方法栈
程序最小单元:线程