A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 郭黎明 中级黑马   /  2014-2-24 21:44  /  1088 人查看  /  9 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一个类继承了一个接口,是否要实现接口里面所有的方法?

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

9 个回复

倒序浏览
不实现的话,没有办法实例化吧。当然你要是拿来做超类另说。
回复 使用道具 举报
洋葱骑士 发表于 2014-2-24 21:45
不实现的话,没有办法实例化吧。当然你要是拿来做超类另说。

要重写所有的方法还是根据需要实现
回复 使用道具 举报
需要都实现,除非是抽象类,因为接口中的都是抽象方法,如果不需要实现功能,就不写代码就行了
比如接口中的一个方法为void method(),但不需要实现该方法的功能,那就这样实现
public void method(){ }

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
郭黎明 发表于 2014-2-24 21:49
要重写所有的方法还是根据需要实现

根据需要,全部实现。不想用的可以就写个大括号{}
回复 使用道具 举报
如果不想全部都实现,也可以只写一个空的方法实现,
这个也算一种偷懒,
有些接口的方法比较多,这个时候全部实现也是个体力活,
比如MouseListener接口, MouseMotionListener接口,这些接口方法太多了
那么java其实提供了一个更好的类
MouseAdapter,其实也是对接口中的方法只提供一个空的实现,
然后我们继承MouseAdapter,可以只实现自己想要的一些方法。其他的方法就不用管了

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
一个类实现了一个或多个接口后,这个类必须实现这些接口里定义的全部抽象方法;否则该类将保留从父类接口哪里继承的抽象方法,该类也必须定义为抽象类
回复 使用道具 举报
榨菜 高级黑马 2014-2-24 23:09:15
8#
恩 一定要实现,   可以对那些没有必要的方法只写一个函数体在那里放着就可以
回复 使用道具 举报
如果一个类实现了一个接口的话,就已经继承了接口中的全部抽象方法了。所以必须要覆写接口中的所有的方法,如果不全部覆写的话,那么子类必须定义为抽象类,也无法实例化对象。

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
接口就相当是抽象类     接口里面的方法是抽象方法   一个类继承了接口必须实现里面的方法!!  接口是作用是使实现类达到统一和规范    但方法的内容可以根据自己的实际需求添加

评分

参与人数 1技术分 +1 收起 理由
zzkang0206 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马