为了账号安全,请及时绑定邮箱和手机立即绑定

watchDoor怎样用?

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

正在回答

5 回答

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

0 回复 有任何疑惑可以回复我~

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

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


0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

0 回复 有任何疑惑可以回复我~

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

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530655    人
  • 解答问题       6091    个

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

进入课程

watchDoor怎样用?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信