1、初始化类或接口的方式
创建某个类的实例,通过new、反射(例如:Class.forName("Person"),如果Person还没初始化的话)、反序列化。
访问静态方法、静态field。
初始化子类,其父类都被初始化。
java.exe命令来运行某类。
2、用final修饰的静态field
如果在编译期就能确定下来就成了宏变量,就算其他类调用这个field也不会初始化这个类。
1、初始化类或接口的方式
创建某个类的实例,通过new、反射(例如:Class.forName("Person"),如果Person还没初始化的话)、反序列化。
访问静态方法、静态field。
初始化子类,其父类都被初始化。
java.exe命令来运行某类。
2、用final修饰的静态field
如果在编译期就能确定下来就成了宏变量,就算其他类调用这个field也不会初始化这个类。