为了账号安全,请及时绑定邮箱和手机立即绑定

为什么通过初始化块变量和构造方法变量输出了两次

为什么通过初始化块变量和构造方法变量输出了两次

正在回答

2 回答

域的默认初始化分为两种:对于静态域,类在装载时对其进行初始化.对于非静态域,在类的实例创建时进行初始化.在默认的初始化前,域的值是不可预测的.
首先“类的实例化”与“类的加载、连接与初始化”完全是两个不同的阶段,只有“类的加载、连接与初始化”都完成了才能进行“类的实例化”。
还有一点,静态块里的代码也不是在类被加载时执行,而是在类被初始化时执行的。 
类的加载简单说只是把class文件加载到内存,并没有执行任何代码。 

希望能帮到你。。。。

1 回复 有任何疑惑可以回复我~

初始化块是在类加载的时候执行的。构造方法是在类实例化的时候执行的。

0 回复 有任何疑惑可以回复我~
#1

isu_腾飞

请问 类加载的时候 与 类实例化的时候 有什么区别? 类加载的时候 是指程序只要执行 吗?
2015-01-25 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么通过初始化块变量和构造方法变量输出了两次

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信