一个接口能否在 Java 中扩展多个接口?

一个接口能否在 Java 中扩展多个接口?此代码在我的 IDE 中似乎有效,并且它确实编译:

interface Foo extends Runnable, Set, Comparator<String> { }

但我听说Java中不允许多重继承。为什么接口似乎有例外?


答案 1

是的,你可以做到。一个接口可以扩展多个接口,如下所示:

interface Maininterface extends inter1, inter2, inter3 {  
  // methods
}

单个类还可以实现多个接口。如果两个接口具有定义相同名称和签名的方法,该怎么办?

有一个棘手的问题:

interface A {
    void test();
}

interface B {
    void test();
}

class C implements A, B {

    @Override
    public void test() {

    }     

}

然后,单个实现适用于两个:)。

在这里阅读我的完整帖子:

http://codeinventions.blogspot.com/2014/07/can-interface-extend-multiple.html


答案 2

一个接口可以扩展多个接口

一个可以实现多个接口

但是,一个只能扩展单个类

注意如何使用这些词,以及在谈论 和 .extendsimplementsinterfaceclass


推荐