Can an interface extend multiple interfaces in Java? This code appears valid in my IDE and it does compile:
interface Foo extends Runnable, Set, Comparator<String> { }
but I had heard that multiple inheritance was not allowed in Java. Why does there appear to be an exception for interfaces?
Yes, you can do it. An interface can extend multiple interfaces, as shown here:
interface Maininterface extends inter1, inter2, inter3 {
// methods
}
A single class can also implement multiple interfaces. What if two interfaces have a method defining the same name and signature?
There is a tricky point:
interface A {
void test();
}
interface B {
void test();
}
class C implements A, B {
@Override
public void test() {
}
}
Then single implementation works for both :).
Read my complete post here:
http://codeinventions.blogspot.com/2014/07/can-interface-extend-multiple.html