Java类的生命周期

Java类的生命周期涉及到类的加载、链接(验证、准备、解析)、初始化、使用、卸载这五个过程。这个过程是由Java虚拟机(JVM)在程序运行时自动管理的,但开发者可以通过一些方式来影响这个过程。具体每个过程中所处理的事情如下。

类的加载

该过程是查找并加载类的二进制数据,这通常通过类加载来完成,类加载器可以是系统提供的,比如Bootstrap ClassLoader、Extension ClassLoader、System ClassLoader,也可以是自定义的。

验证

该过程是确保加载的类符合Java语言规范,没有安全方面的问题

准备

该过程是为类的静态变量分配内存,并设置默认值,如int类型默认值为0,引用类型默认值为null。

解析

该过程是将类的常量池中的符号引用(符号化的类方法、字段名称)替换为直接引用(内存地址或者句柄)。句柄是一个指向另一个指针的指针。

初始化

该过程是执行类定义中指定的初始化代码,如变量的赋值、静态代码块的执行

使用

一旦类被初始化,它就可以被程序中的其他部分使用。这包括创建类的实例、访问类的静态成员等。

卸载

当JVM决定不再需要某个类时,会卸载这个类。通常,当一个类不再被任何活动引用时,JVM会考虑卸载它。但是,在某些情况下(例如,当一个类被标记为final时),JVM可能不会卸载这个类。

posted @ 2026-01-05 11:55  爪哇洋  阅读(3)  评论(0)    收藏  举报