美文网首页
继承时构造顺序

继承时构造顺序

作者: dependmyse | 来源:发表于2016-08-02 17:31 被阅读0次
package com.tju.lab;

/**
 * Created by xiangyang.laixiang on 2016/8/2.
 */
public class A extends C{
    B b= new B();
    public A(){
        System.out.println("A");
    }
    public static void main(String args[])
    {
        A a= new A();
    }
}

class B{
    public B(){
        System.out.println("B");
    }
}

class C{
    B b = new B();
    public C(){
        System.out.println("C");
    }
}


### BCBA

###从输出结果来看,在执行时先构造所继承的对象,然后自己的构造函数

* 在这里A集成C,所以先构造C,C没有继承,所以直接进行构造,先构造本身所包含对象B,输出B,然后调用本身构造函数输出C,构造完C控制权回到A,A中包含对象B,所以输出B,然后调用A本身构造函数输出A,最终答案是BCBA *

### 在构造时所包含的类对象实例化顺序要高于类对象构造函数本身

相关文章

  • 继承时构造顺序

  • scala-继承与特质

    继承与特质 继承 继承的概念 使用extends关键字: 构造器的执行顺序 Scala在继承的时候构造器的执行顺序...

  • 继承与组合复用

    继承 继承体系初始化顺序 创建子类对象时,默认先调用父类的无参构造方法,当父类中存在多个构造方法,但没有无参构造方...

  • C++ 构造和析构

    构造顺序 C++构造函数按下列顺序被调用:(1)任何虚拟基类的构造函数按照它们被继承的顺序构造;(2)任何非虚拟基...

  • GeekBand-C++面向对象高级编程(上)-Week3

    1. 组合与继承 例子 注意点: 构造顺序:由内而外 析构顺序:由外而内 三种继承方式 公有继承(public)公...

  • Java的加载顺序

    加载顺序有继承关系时:父类static member>子类 static member>父类成员变量>父类构造方法...

  • 派生类构造函数执行顺序

    执行顺序: 1.先执行基类的构造函数,按照被继承时声明顺序,并且虚基类优先2.初始化新定义的成员,执行顺序按照各个...

  • C++对象模型5——对象的构造/析构

    对象的构造/析构顺序 初始化虚基类,按照继承顺序,从左到右,从最深到最浅。 初始化按照继承顺序初始化父类,如果父类...

  • 静态代码块、构造代码块 继承情况下执行顺序

    static{ }静态代码块在类加载时执行。{ }构造代码与构造器在实例化成对象时会先后顺序一组执行。在继承状态下...

  • 06.继承中的构造方法执行顺序

    继承中构造方法的执行顺序 A:super(实参列表);语句 在子类的构造方法中使用,用来调用父类中的构造方法(具...

网友评论

      本文标题:继承时构造顺序

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