黑马程序员技术交流社区

标题: 关于类加载和产生对象中间的过程问题 [打印本页]

作者: 怪盗急得    时间: 2012-10-7 09:58
标题: 关于类加载和产生对象中间的过程问题
本帖最后由 陈德基 于 2012-10-7 17:34 编辑

类加载进内存,但是中间还有一些过程后才会产生对象,这中间的过程是什么?为什么会有这种先后的顺序?而不是同时存在?
主要是看到类加载进内存后,静态也存在于内存的共享区,但是静态优先于对象产生,所以静态方法才不能调用非静态成员。
还是这个问题,类加载进内存,到产生对象,中间都发生了什么?
作者: AngieFans85    时间: 2012-10-7 10:27
本帖最后由 马镱洵 于 2012-10-7 10:30 编辑

至于验证,链接,开辟空间什么的我就省略不写了:
父类的静态成员初始化以及静态代码块(依先后顺序) -> 子类的静态成员初始化以及静态代码块(依先后顺序) -> 父类非静态成员默认初始化(在子类的构造方法中调用super()时已经将父类和子类的非静态成员进行默认初始化了) -> 子类非静态成员默认初始化 -> 父类非静态成员显式初始化 -> 父类构造代码块 -> 父类构造方法 -> 子类非静态成员显式初始化 -> 子类构造代码块 -> 子类构造方法.




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