Voglio dire:Perché un'interfaccia non può implementare un'altra interfaccia?
interface B {...}
interface A extends B {...} // allowed
interface A implements B {...} // not allowed
I googled e ho trovato this:
implements
indicato definente un'implementazione per i metodi di un'interfaccia. Tuttavia le interfacce non hanno implementazione, quindi non è possibile.
Tuttavia, l'interfaccia è una classe astratta al 100% e una classe astratta può implementare interfacce (classe astratta al 100%) senza implementarne i metodi. Qual è il problema quando si definisce "interfaccia"?
In dettaglio,
interface A {
void methodA();
}
abstract class B implements A {} // we may not implement methodA() but allowed
class C extends B {
void methodA(){}
}
interface B implements A {} // not allowed.
//however, interface B = %100 abstract class B
Come di Java 8, interfacce possono avere metodi predefiniti, che li rende molto più simili alle classi astratte in tal senso. – forresthopkinsa
Grazie per l'ultima frase! –