黑马程序员技术交流社区

标题: 有关类中的一些元素的初始化执行顺序? [打印本页]

作者: 符立波    时间: 2012-12-15 18:45
标题: 有关类中的一些元素的初始化执行顺序?
本帖最后由 符立波 于 2012-12-15 22:50 编辑

静态代码块的初始化,类变量的初始化,实例变量的初始化,构造代码块的初始化,构造函数的初始化,它们是在什么地方初始化的,以及初始化的先后顺序?
作者: 焦健    时间: 2012-12-15 19:29
1.statis代码块初始化对象。
2.默认初始化。
3.显式初始化。
4.构造代码块初始化。
5.构造函数初始化。
作者: 符立波    时间: 2012-12-15 20:19
本帖最后由 符立波 于 2012-12-15 20:22 编辑
焦健 发表于 2012-12-15 19:29
1.statis代码块初始化对象。
2.默认初始化。
3.显式初始化。


静态代码块在前面,还是static String name = "zhangsa"在前面?默认的初始化应该是在有了对象之后才有的吗?
作者: 焦健    时间: 2012-12-15 20:31
符立波 发表于 2012-12-15 20:19
静态代码块在前面,还是static String name = "zhangsa"在前面?默认的初始化应该是在有了对象之后才有的 ...

是静态代码块最先进行初始化,static String name = "zhangsa"是显式初始化,静态代码块初始化以后进行默认初始化,就是先static String name =null,然后在进行显式初始化static String name = "zhangsa"。就是按我上面写的顺序,默认初始化是在有对象以后才有的,因为是要对对象进行初始化的嘛。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2