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 评论:1   阅读:960   引用:0

发表评论>>

署名发表(评论可管理,不必输入下面的姓名)

姓名:

主题:

内容: 最少15个,最长1000个字符

验证码: (如不清楚,请刷新)

Copyright@2004-2010 powered by YuLog