java初始化顺序
初始化顺序
1、类型为Dog的一个对象首次创建时,或者Dog类的静态方法/数据首次访问时,java解释器必须找到Dog.class(装载类)。
2、找到Dog.class后,他的所有的静态初始化模块都会运行。因此,静态初始化仅发生一次。
3、创建一个new Dog()时,new语句首先会在堆里分配以供足够的空间。
4、这个空间将会被清除为零,因此Dog中所有的数据成员都得到了缺省值。
5、执行定义初始化
6、执行构造函数
先静态后动态
先定义后构造函数
四个顺序
定义初始化
在一个类里,初始化的顺序是由变量在类内地定义顺序决定的。即使变量定义大量遍布于方法定义的中间,那些变量让然会在调用任何方法之前得到初始化---当然在构造函数之前
。
静态数据初始化
静态的东西属于类
类Class与类对象
静态数据成员只在这个类的第一个对象要创建的时候初始化
lunzi
2008-02-27 22:01:36
评论:0
阅读:417
引用:0
