子类中Java静态块的执行

子类中Java静态块的执行,第1张

子类中Java静态块的执行

您看到

Child
该类已加载,但尚未初始化

由于是类的成员,因此访问

Child.age
不会导致
Child
类的初始化。因此,只有class被初始化,并保持。
age``Parent``Parent``age``0

12.4.1。发生初始化时

类或接口类型T将在以下任何一种首次出现之前立即初始化:

  • T是一个类,并创建T的实例。

  • 调用由T声明的静态方法。

  • 分配由T声明的静态字段

  • 使用由T声明的静态字段,并且该字段不是常量变量(第4.12.4节)

  • T是顶级类(第7.6节),并执行词法嵌套在T中的断言(第14.10节)(第8.1.3节)。

在您的情况下,您访问了由声明的静态字段

Parent
,因此仅
Parent
被初始化。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5430353.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存