"当Java程序首次通过下面6种方式来使用某个类或接口时,系统就会初始化该类或接口。 创建类的实例。为某个类创建实例的方式包括:使用new操作符来创建实例,通过反射来创建实例,通过反序列化的方式来创建实例。 调用某个类的静态方法。 访问某个类或接口的静态Field,或为该静态Field赋值。 使用反射方式来强制创建某个类或接口对应的 java.lang.Class 对象。例如代码:Class.forName(""Person""),如果系统还未初始化 Person 类,则这行代码将会导致该Person 类被初始化,并返回 Person 类对应的 java.lang.Class 对象。关于 Class 的forName方法请参考13.3节。 初始化某个类的子类。当初始化某个类的子类时,该子类的所有父类都会被初始化。 直接使用java.exe命令来运行某个主类。当运行某个主类时,程序会先初始化该主类。"
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。