对象的创建过程以及super关键字的使用

对象创建过程三部曲:1)分配空间 2)初始化属性 3)调用构造方法

 

涉及到继承的对象C的创建过程:(C extends B,B extends A)

1.分配空间,在第一次分配空间时,会把整个继承关系中涉及到的类所需要的空间,都分配完毕,并把所有属性都设为默认值 0。(valueA, valueB, valueC = 0)

2.递归的构造父类对象;

  2.1)初始化父类对象A的属性(valueA=100)

  2.2)调用父类A的构造方法(valueA=150)【若父类中有多个构造方法,默认调用无参构造;子类中使用super关键字,可以指定调用父类的某个制定的构造方法】

  2.1)初始化父类对象B的属性(valueB=100)

  2.2)调用父类B的构造方法(valueB=250)

3.初始化本类的属性(valueC=300)

4.调用本类的构造方法(valueC=350)

你可能感兴趣的:(对象的创建过程以及super关键字的使用)