读书人

对象初始化次第

发布时间: 2012-12-20 09:53:21 作者: rapoo

对象初始化次序

对象初始化次序

1)??? 所有变量一定会在任何一个函数(甚至是构造函数)被调用之前完成初始化(见P233例子)
2)??? 在产生一个class的对象(包含static成员的class的代码被装载)时,首先自动初始化class中的static成员变量,再执行所有出现于static数据定义处的初始化动作,最后执行static block,所有这些初始化操作只在第一次生成该对象时进行。
3)??? 自动初始化class中的其它成员变量。
4)??? 执行所有出现于数据定义处的初始化动作。如:int i=1;的执行顺序是先把I自动初始化为0,再执行数据定义处的初始化动作,初始化为1。
5)??? 执行non-static block
6)??? 调用构造函数。

?

例:

?

结果:

Cup(11)Cup(1)Cup(2)Cup(33)Cup(3)Cup(4)Cups()Cup(33)Cup(3)Cup(4)Cups()Inside main()f(99)

?

来自网络文件: Java编程思想读书笔记

读书人网 >编程

热点推荐