博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
「每天一道面试题」什么时候对类进行初始化?
阅读量:6939 次
发布时间:2019-06-27

本文共 350 字,大约阅读时间需要 1 分钟。

「每天一道面试题」什么时候对类进行初始化?

对于类生命周期中的初始化阶段,虚拟机规范中做了严格规定,有且仅有以下5种情况会立即进行初始化操作。

  1. 使用new关键字创建类的实例对象时、读取一个类的静态属性、设置一个类的静态属性、调用类的静态方法时;

  2. 使用java.lang.reflect包中的方法对类进行发射操作的时候,如果类没有被初始化,则进行初始化;

  3. 初始化一个类的时候,其父类没有被初始化,先初始化其父类;

  4. 当应用启动的时候,如果指定了引导类,引导类没有初始化,先初始化这个引导类;

  5. 在JDK7中,如果一个java.lang.invoke.MethodHandle实例最后的解析结果REF_getStatic、REF_putStatic、REF_invokeStatic的方法句柄,并且这个方法句柄对应的类没有被初始化,先触发其初始化操作。

转载地址:http://drinl.baihongyu.com/

你可能感兴趣的文章
Datastage里Aggregator的一些注意事项
查看>>
Eclipse中Maven插件部分常用功能命令介绍
查看>>
云风:我所偏爱的C语言面向对象编程范式
查看>>
IIS与Apache共用80端口
查看>>
VA助手(Visual Assist X) 笔记
查看>>
COCI2015/2016 CONTEST#4 简易题解
查看>>
测试管理工具实践Mantis-使用说明及不同环境下的安装
查看>>
小团队如何提高工作效率
查看>>
杭电 1045 Fire Net
查看>>
高效开发Android App的10个建议
查看>>
fiddler Android下https抓包全攻略
查看>>
让多个Fragment 切换时不重新实例化
查看>>
数字分身术
查看>>
UTC,BJT时间的换算
查看>>
automapper
查看>>
NDK 不能编译静态库
查看>>
null和undefined的一些区别
查看>>
计算机硬件知识整理
查看>>
第三周学习总结
查看>>
子数组最大求和(续)
查看>>