美文网首页
对象初始化方法执行顺序

对象初始化方法执行顺序

作者: lsh的学习笔记 | 来源:发表于2020-05-27 00:00 被阅读0次

静态代码块:用staitc声明,jvm加载类时执行,仅执行一次
构造代码块:类中直接用{}定义,每一次创建对象时执行。

执行顺序优先级:

  1. 静态块,
  2. main(),
  3. 构造块,
  4. 构造方法。

静态代码块

作用

初始化类

  1. 随着类的加载而执行,只执行一次,并优先于main方法
  2. 一个类中可以有多个静态代码块,执行顺序按定义的先后顺序。

和构造代码块的区别

  1. 静态代码块是初始化类的,而构造代码块是初始化对象的。
  2. 静态代码块中的变量是局部变量,与普通函数中的局部变量性质没有区别。

构造代码块

作用

给对象进行初始化。

对象一建立就运行构造代码块了,而且优先于构造函数执行。

这里要强调一下,有对象建立,才会运行构造代码块,类不能调用构造代码块的,而且构造代码块与构造函数的执行顺序是前者先于后者执行。

与构造器的区别

构造代码块是给所有对象进行统一初始化,而构造函数是给对应的对象初始化。

因为构造器可能有多个,调用各个构造器初始化的对象是不一样的,但无论创建哪个对象,都会先执行相同的构造代码块。

也就是说,构造代码块中定义的是不同对象共性初始化内容

相关文章

  • Java中的继承

    继承初始化顺序 1、初始化父类再初始化子类2、先执行初始化对象中属性,再执行构造方法中的初始化 重写 1、什么是方...

  • 对象初始化方法执行顺序

    静态代码块:用staitc声明,jvm加载类时执行,仅执行一次构造代码块:类中直接用{}定义,每一次创建对象时执行...

  • 9道题来理解什么是类的主动引用和被动引用

    剖析类的初始化顺序? 题目: 执行结果: 剖析类的初始化顺序? 先执行父类的方法,再执行子类的

  • 14.对象的初始化顺序

    对象初始化顺序 1、初始化属性 2、调用构造方法 结果:

  • 方法调用顺序

    方法调用顺序 1.alloc :创建对象,分配空间 2.init :初始化对象,初始化数据 3.loadView...

  • groupcache源码(2) Group

    Group对象 Group对象结构以及方法 NewGroup() 根据程序执行顺序,NewHTTPPool()->...

  • 初始化

    成员方法的初始化 在类的内部,变量的定义顺序决定了初始化的顺序。创建一个对象时,会先初始化对象中的成员变量,然后才...

  • static关键字

    static 关键字所修饰的属性或方法都是属于类的,而不是属于对象的,使用类名调用 static初始化顺序 执行顺...

  • React专题9: 生命周期函数

    初始化和页面刷新 执行顺序 state变化 执行顺序 props变化 执行顺序 shouldComponentUp...

  • java中的继承

    继承的关键之是extends子类 extends 父类 继承的初始化顺序 初始化父类再初始化子类 先执行初始化对象...

网友评论

      本文标题:对象初始化方法执行顺序

      本文链接:https://www.haomeiwen.com/subject/zgxiahtx.html