例程中写道中国人继承父类方法为什么美国人不用继承可以直接使用?

来源:11-2 代码实现

慕粉224537116

2018-04-20 22:30

为什么美国人不用继承父类的方法呢?求解

写回答 关注

11回答

  • qq_蠢到深处自然萌_rtyZ58
    2019-07-11 21:33:09

    中国人也不继承父类,同样可以使用,估计是方法重写了,而且下面也是用Chinese.p1和American.p2.

  • 旺旺小小酥story
    2019-01-16 11:23:44

    小老弟啊,你好歹看完了再考虑这个问题。他后面就开始讲解这个问题,为什么没有继承。

  • 神影天初
    2018-08-11 21:38:06

    没错他就是忘记加了,都是继承的Person,只不过一个是重写的一个是新建的都可以运行所以没有变化,这如果用Person p2=new American()的多态就出问题了。

  • skjdkjs
    2018-07-17 11:39:58

    因为main方法里面写的是;  美国人  对象名  = new   美国人()  
    而不是:  人类   对象名 = new 美国人()

  • Passionate1
    2018-07-03 15:21:30

    就是让同学们平时注意而故意漏写的   前面都说了是继承关系呀

  • qq_千界_0
    2018-06-10 15:52:50

    这里就像最开始编程的时候,定义一个方法,在main中定义该类的对象,在使用该对象来调用方法,只是该方法放在同一个包中的不同类中

  • 慕圣3021833
    2018-06-01 17:05:11

    美国人的say方法也是继承自父类而重写的 视频里说过的 不继承何来重写 

  • 慕圣3021833
    2018-06-01 17:02:31

    就是特么的忘了而已

    俩子类都继承自父类 这是前面说的明明白白的

    qq_蠢到深...

    没用person之前,确实没继承啊,但却可以正常运行是怎么回事?

    2019-07-11 21:30:00

    共 1 条回复 >

  • 我是叶霖
    2018-05-02 18:25:28

    美国人是一个类,在main方法下创建实例化对象就可以调用的。

    希望能帮到你

  • 慕粉1474278593
    2018-04-22 01:30:36

    中国人是对父类继承方法的重写(其实中国人在使用该方法之前需要使用父类构造方法super(),super()可省略,前面已经讲到过),美国人是一个新定义的类,重新定义的方法(只不过方法名一样,但和Person类没任何关系)

  • 1471548
    2018-04-21 11:48:23

    因为他们就是同一个包下面的啊 ,你直接创建的是American类的对象,然后用对象调用类中的方法,之前没有用多态,所以不需要加上extends关键字,后来用父类引用指向子类对象了,就用到了多态。

Java入门第二季 升级版

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

530653 学习 · 6091 问题

查看课程

相似问题