父类与子类之间的调用顺序
a) 父类静态代码块
b) 子类静态代码块
c) 父类构造方法
d) 子类构造方法
e) 子类普通方法
f) 重写父类的方法,则打印重写后的方法
JVM类加载机制
加载 (类的加载)
验证
准备 为类的静态变量(static filed)在方法区分配内存,并赋默认初值(0值或null值)。如static int a = 100;
静态变量a就会在准备阶段被赋默认值0。
对于一般的成员变量是在类实例化时候,随对象一起分配在堆内存中。
另外,静态常量(static final filed)会在准备阶段赋程序设定的初值,如static final int a = 666; 静态常量a就会在准备阶 段被直接赋值为666,对于静态变量,这个操作是在初始化阶段进行的
解析(类的连接)
为静态变量赋程序设定的初值(类的初始化)
类的使用
卸载
双亲委派模式
先委托父类去加载一直到根加载器,如果一直找不到.class文件,再继续交给子类加载器,直到发起请求的类,如果再找不到,报ClassNotFound
更多内容链接:https://blog.csdn.net/qq_26545305/article/details/70241939 JVM的server模式和client模式
https://blog.csdn.net/yunzhaji3762/article/details/79872890谁说深入浅出虚拟机难?现在我让他通俗易懂(JVM)
https://blog.csdn.net/weixin_40078053/article/details/80552432学习虚拟机(jvm)必须知道的东西
https://blog.csdn.net/fascinatingGirl/article/details/52251153Java的虚拟机JVM之JVM-server、JVM-client区别