3-8的toString重写

来源:9-8 Java 中的 Object 类 Ⅰ

Jasong

2016-04-17 20:50

为什么重写toString方法后就不输出父类当中的无参构造内

写回答 关注

5回答

  • 我说红豆你说哟
    2016-08-24 17:29:18

    http://img.mukewang.com/57bd688500011ca511430220.jpg有个硬伤的地方,楼主观察比较仔细哈,看下控制台的滚动条,上面是不是还有一点没显示?呐~就是那个父类的构造方法输出。好想做一个痛哭的表情。_(:зゝ∠)_

    慕粉1143...

    刚想说滚动条拉到顶上。。

    2017-01-02 23:35:14

    共 1 条回复 >

  • 我说红豆你说哟
    2016-08-24 16:55:35

    一定会调用,原因是这样的。
    因为子类继承了父类,那么就默认的含有父类的公共成员方法和公共成员变量,这些方法和变量在子类里不再重复声明。如果你初始化子类的时候,不初始化父类,那么你通过子类调用父类方法或变量的时候会出现什么情况呢?当然就是抛异常阿!所以,Java虚拟机会在你初始化子类的时候默认的初始化子类的父类。而且是一层一层的往上递进!
    在其他网站看到的

  • 慕粉3194549
    2016-05-06 12:35:36

    为什么我还会输出父类的构造方法吗...

  • 1宠儿011
    2016-04-17 21:30:56

    重写父类继承的方法,当调用时会优先调用子类的方法,也就是说会优先执行子类中的toString

  • 慕粉3194764
    2016-04-17 21:16:06

    建议在学习下重写的概念。还可以看一下super关键字的用法。

Java入门第二季 升级版

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

530652 学习 · 6091 问题

查看课程

相似问题