构造代码块&对象创建流程

  • 构造函数与构造代码块
    构造代码块:给所有对象初始化
    构造函数:只给对应的对象初始化

  • 成员变量的显示初始化在构造代码块之前

  • 创建一个对象的流程
    1、加载指定字节码文件进内存
    2、通过new关键字在堆内存中开辟空间,分配首地址值
    3、对对象中的属性进行默认初始化
    4、调用与之对应的构造函数,构造函数压栈
    5、构造函数中执行隐式的语句super()访问父类构造函数
    6、对属性进行显示初始化
    7、调用类中的构造代码块
    8、执行构造函数中的自定义初始化代码块
    9、初始化完毕,将地址赋值给指定的引用

你可能感兴趣的:(构造代码块&对象创建流程)