watchDoor怎样用?

来源:10-1 Java 中的多态

前行的鱼

2017-11-16 23:32

老师你说watchDoor不能那样用,那你把怎么用写出来啊

写回答 关注

5回答

  • qq_ATTENTON_1
    2018-05-25 17:24:54

    watchDoor()是子类Dog的方法。父类里面没有。所以在创建dog对象的时候(Animal dog = new Dog();)dog.watchDoor()是首先要去父类找这个watchDoor()方法,但是父类里面没有该方法,所以报错。但是如果你把dog.watchDoor();改成 ((Dog)dog).watchDoor();之后就不会报错、((Dog)dog)是强制(向下)转换(转型)。估计我说了你也理解不到。 我是看的其他视频学的

  • 慕设计0298976
    2018-04-06 03:05:40

    Dog dog = (Dog)obj2;  //将父类引用强制转换成子类

    dog.watchDoor();   // 可以执行子类独有的方法


  • 慕圣卡卡米
    2017-12-04 15:39:37

    不能用是因为父类中没有watchdoor方法,如果在父类中实例化watchdoor方法,就可以调用了。

  • Mr丶azhang
    2017-11-20 16:35:47

    老师举的watchDoor例子是为了说父类中没有,而子类中有的方法,在调用的时候不能够用引用多态的形式调用,如果想要调用watchDoor需要先实例化Dog类,然后再进行调用~

  • 骑着猪去追梦
    2017-11-17 10:56:46

    watchDoor描述的是狗具有看门的属性,老师说的是方法不能这样使用,无关属性什么事,你把问题描述清楚一些。

Java入门第二季 升级版

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

530654 学习 · 6091 问题

查看课程

相似问题