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

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

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

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

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 123.继承 一个类可以从另外一个类继承方法,属性和其他特征。当一个类继承另外一个类时, 继承类叫子类, 被继承的...
    无沣阅读 5,278评论 2 4
  • 本章将会介绍 存储属性的初始赋值自定义构造过程默认构造器值类型的构造器代理类的继承和构造过程可失败构造器必要构造器...
    寒桥阅读 4,151评论 0 0
  • 孤单一朵花, 绽放在枝头。 不共群芳斗, 逍遥自在游!
    王了一一阅读 2,865评论 30 20
  • 该说什么呢?好像也没有什么好说,好写的。 所期待的东西不会如你所愿,我发觉,所有我希望发生的事情都不会发生,是我期...
    流浪痴人阅读 1,301评论 0 0

友情链接更多精彩内容