首页 新闻 会员 周边

子类是否必须要实现抽象类的抽象方法?

0
悬赏园豆:50 [待解决问题]
  • 今天在书中遇到这个问题,在idea中和eclipse中的结果不一样,求解决。

eclipse:

idea:

书中选A

[hello,world]的主页 [hello,world] | 初学一级 | 园豆:152
提问于:2022-10-25 22:18

你用java和javac命令试试呢。很久没搞过java了。是不是有编译参数能影响编译结果,或者是java不同版本有不同的编译结果?

会长 1年前

@会长: 命令行的方式报错不能执行,不过eclipse也报错但是却可以正常执行(命令行是java17eclipse是java1.8)

[hello,world] 1年前
< >
分享
所有回答(4)
0
智客工坊 | 园豆:1855 (小虾三级) | 2022-10-26 12:45
0

抽象类应当被普通类继承且实现其抽象方法,抽象类可以继承抽象类而不实现其方法。所以答案选C

景伟·郭 | 园豆:183 (初学一级) | 2022-10-26 14:07

但eclipse确实可以执行啊?

支持(0) 反对(0) [hello,world] | 园豆:152 (初学一级) | 2022-10-26 14:09

并且书中答案也是A

支持(0) 反对(0) [hello,world] | 园豆:152 (初学一级) | 2022-10-26 14:10
0

看情况:
如果子类是非抽象类,则必须实现接口中的所有方法,
如果子类是抽象类,则可以不实现接口中的所有方法,因为抽象类中允许有抽象方法的存在。
这个代码javac命令是无法编译通过的,会提示:Mine不是抽象的, 并且未覆盖MineBase中的抽象方法amethod()。所以答案选择C。

花开重日 | 园豆:209 (菜鸟二级) | 2022-10-26 17:02
0

不管是否可执行,尽量遵守一般面向对象的规则,就是:普通子类(非抽象类)继承抽象类,一定要实现抽象类中的抽象方法。

拐子 | 园豆:181 (初学一级) | 2022-10-26 17:22
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册