目录
一、主动使用
- 1.创建类的实例
- 2.访问某个类或接口的静态变量,或者对该静态变量赋值
- 3.调用类的静态方法
- 4.反射(例如Class.forName("com.learning.Test"))
- 5.初始化一个类的子类
- 6.java虚拟机启动时被标明为启动类的类
- 7.jdk7开始提供的动态语言支持:java.lang.invoke.MethodHandle实例的解析结果REF_getStatic、REF_putStatic、REF_invokeStatic句柄对应的类没有初始化,则初始化
二、被动使用
- 1.其它使用java类的方式都看作是对类的被动使用,不会导致类的初始化