此时为什么会有Animal类执行了和Dog类执行了

来源:9-7 Java 中的 super 的使用

weibo_人二小生_0

2016-01-17 20:26

执行Dog dog=new Dog();

dog.method();

为什么会有这两个运行

写回答 关注

5回答

  • 怒放的生命012
    2016-05-22 22:56:10

    因为你声明le一个子类对象,对于你你调用子类的构造方法,而子类又继承了父类的属性和构造方法,所以你调用子类的方法时,子类会先对父类进行初始化,所以隐式调用了父类的构造方法,因此执行顺序是先父类的构造方法接着是子类的构造方法,我也是新手,看看有问题么,望采纳

  • 谁也别阻拦我
    2016-02-10 19:49:23

    因为构造方法里有隐式参数this, super,你调method打印age的时候,要经过构造方法里隐式参数去调用成员变量,所以执行构造方法的时候看到里面有一个打印,自然也把他执行了。我也不知道说的对不对,还有人没,鉴定一下


  • 连宏伟HW
    2016-01-24 18:34:37

    构造方法的执行顺序必须是:

    先执行父类,再执行子类

  • weibo爱分享的番茄妞
    2016-01-22 18:04:37

    因为animal类和dog类都是构造方法,,,

  • l1hx
    2016-01-17 21:59:46

    问的啥?


    weibo_...

    就这个

    2016-01-18 14:02:15

    共 1 条回复 >

Java入门第二季 升级版

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

530099 学习 · 6086 问题

查看课程

相似问题