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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 秦岩 黑马帝   /  2012-4-3 22:31  /  2199 人查看  /  10 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

一个类可以同时实现2个接口吗?任何两个接口都可以吗?

10 个回复

正序浏览
一个子类可以同时实现多个接口:
   class 子类 implements 接口A,接口B,...{}
相当于拜托了java的单继承局限。
所以你说的是没有错的,但是你要注意了!
   如果一个子类同时实现了两个接口,这样在子类中就必须同时覆写两个接口中的全部抽象方法!!!
这点很重要,不要忽略了!
回复 使用道具 举报
可以,这也是JAVA多态的一种体现吧,单继承,多实现 .
注意:多实现的时候如果多个接口中的方法名相同 返回值类型不同 使用内部类的方式实现
回复 使用道具 举报
可以的,你说的没问题
回复 使用道具 举报
接上面
interface A{
void fun();
}

interface B{
int fun();
}
这两个接口的方法名,参数列表相同,而返回值类型不同,就不能同时被一个类实现。
回复 使用道具 举报
正常情况下可以同时实现2个接口,
但是,当两个接口中的方法的方法名、参数列表相同,
而返回值类型不同时,不能同时实现这两个接口。
例如:
interface A{
void fun();
}



回复 使用道具 举报
一个类可以实现多个接口。
但并不是任何两个都行。
当返回值类型不同时不行,哪怕方法名、参数列表相同。
回复 使用道具 举报
可以,这也是JAVA多态的一种体现吧,单继承,多实现 ,
注意:多实现的时候如果多个接口中的方法名相同 返回值类型不同 不可以哦 在调用时不知道要用哪一个
public interface Cat1 {
   public void get();
}

public interface Cat2 {
   public int get();
}

public class Cat implements Cat1,Cat2 {}
回复 使用道具 举报

可以,任何两个都可以
回复 使用道具 举报
可以,这也是JAVA多态的一种体现吧,单继承,多实现
回复 使用道具 举报
java是单继承多实现的,可以实现多个接口,但是只能继承一个类,不过接口之间可以多继承
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马