黑马程序员技术交流社区

标题: 求解释代码块和静态方法哪个先执行 [打印本页]

作者: 670982188@qq.co    时间: 2015-1-12 23:51
标题: 求解释代码块和静态方法哪个先执行
很纠结,求指导
作者: jiangwenjun    时间: 2015-1-12 23:58
定义一个新对象都做了哪些事情?
        1、把类名.class文件加载到内存中。
        2、执行该类中的static代码块,如果有得话,给该类进行初始化。
        3、在堆内存中开辟空间,分配内存地址。给对象
        4、在堆内存中建立对象的特有属性。并进行默认初始化。
        5、对属性进行显示初始化。
        6、对对象进行构造代码块初始化。
        7、对对象进行对应构造函数初始化。
        8、将内存地址赋给栈内存中的对象名变量。

一开始  .class文件就已经进内存了,接着静态代码块对类得加载而加载!
作者: jiangwenjun    时间: 2015-1-13 00:01
静态方法是随着类得加载而加载,代码块是构造代码块是随着对象new而加载的




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