小结:JAVA中类的主动加载7个情况

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了小结:JAVA中类的主动加载7个情况相关的知识,希望对你有一定的参考价值。


   JAVA中,类的加载的确是个问题,其实分为主动加载和被动加载,类只有在下面7个情况下,是

主动加载的:

小结:JAVA中类的主动加载7个情况_初始化

 

小结:JAVA中类的主动加载7个情况_静态代码块_02



下面来看个例子:

小结:JAVA中类的主动加载7个情况_加载_03



在这个例子中,只输出:MyParent1 static block

                                       hello world注意:这里MyChild1的静态代码块是没执行输出的,因为这个时候mychild1中没执行上面“主动加载7个情景”中的任何一个,

STR是父类的静态变量,只有直接定义了该字段的类才会给初始化,因此是加载了myparnet1类,mychild1类没有初始化,所以

其静态代码块没使用。

小结:JAVA中类的主动加载7个情况_加载_04


  如果代码修改上面这样,Mychild1中有静态成员变量str2了,MAIN中调用的是mychild1.str2,因此执行的时候,mychild1是初始化了,所以mychild1的静态代码块是执行了。

 

以上是关于小结:JAVA中类的主动加载7个情况的主要内容,如果未能解决你的问题,请参考以下文章

java中类加载时机

java中类加载时机

java 中类的加载顺序

java中类的加载顺序介绍(ClassLoader)

Java中类加载器的分析与理解!详细解析类的加载过程

JAVA 类的加载