从类加载进内存到对象创建,各部分的执行顺序

Posted 阿肯新

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了从类加载进内存到对象创建,各部分的执行顺序相关的知识,希望对你有一定的参考价值。

一、加载代码时:

    1)、父类的静态代码块和静态属性按顺序执行。(静态方法只加载,不引用,不执行)

    2)、子类的静态代码块和静态属性按顺序执行。(静态方法只加载,不引用,不执行)

二、创建对象时:

           1)、在stack中创建对象名称(没有则无此步)。         2)、在heap中开辟对象空间。          3)、创建父类成员变量并默认初始化。
           4)、对父类成员变量进行显示初始化。      5)、父类构造代码块(非静态代码块)      6)、父类的构造函数
           7)、创建子类的成员变量并默认初始化。      8)、对子类对象进行显示初始化 。        9)、子类构造代码块(非静态代码块)。
           10)子类构造函数。

以上是关于从类加载进内存到对象创建,各部分的执行顺序的主要内容,如果未能解决你的问题,请参考以下文章

java类中各成分的加载顺序跟内存中的存放位置-----转载

好Java 类中各成分加载顺序 和 内存中的存放位置

好Java 类中各成分加载顺序 和 内存中的存放位置

面向对象,类名称空间,查找顺序,组合

Java 对象的创建过程

类的加载顺序