Fork me on GitHub

类初始化

Posted on 2019-09-03 18:01  攀一座山  阅读(122)  评论(0编辑  收藏  举报

1、类初始化过程就是执行一个<clinit>()的方法

2、一个类只有一个<clinit>()方法

3、这个方法的代码由两部分代码组装而成:

(1)静态变量的显式赋值

(2)静态代码块

它俩是按从上到下的顺序组装。

4、这个方法的执行特点:

(1)当首次使用这个类时,需要加载和初始化这个类,就会执行<clinit>()方法

(2)这个方法只会执行一次

(3)如果子类初始化时,发现父类没有初始化,先初始化父类。

(4)如果main方法所在的类,先完成类的初始化,再运行main方法

(5)类初始化要先于实例初始化。

Copyright © 2024 攀一座山
Powered by .NET 8.0 on Kubernetes