文件名称:关于JVM的总结
文件大小:7KB
文件格式:MD
更新时间:2020-12-29 10:58:37
JVM
类的生命周期: 加载->(验证->准备->解析)(连接)->初始化->使用->卸载 类被加载到虚拟机内存开始,到卸载出内存为止,生命周期包含: 加载,验证,准备,解析,初始化,使用,卸载 7个阶段,加载,验证,准备,初始化和卸载这5个顺序是确定的,解析阶段则不一定,他在某些情况下可以在初始化阶段之后在开始,这是为了支持Java语言的运行时绑定。 类加载机制: 加载:通过类的全限定名,将类加载如方法区,在内存中生成一个java.lang.Class对象, 作为方法区这个类的各种数据访问入口. 验证:确保Class文件的字节流包含的信息符合当前虚拟机的要求. 准备:正式为类变量分配内存,并设置变量初始值.这些变量都存储在方法区. 解析:将常量池中的符号引用替换为直接引用的过程,虚拟机不会重新再解析而是通过缓存去拿出解析的数据 初始化:在准备阶段已经赋过一个系统要求的初始值,而在初始化阶段则通过程序制定的主管计划去初始化变量和其他资源,从另一个角度理解就是 执行类构造器的()方法 .()方法是由编译器自动收集类中的所有变量的复制动作和静态语句中的语句合并产生的. 静态语句块中只能访问到定义在静态语句块之前的变量,定义在他之后的,在静态语句块中只能赋值不能访问