Possibili duplicati:
Abstract class and Interface class?
Java: interface/abstract classes/abstract methodqual è l'effettivo utilizzo dell'interfaccia in java?
In Java, qualunque sia l'uso dell'interfaccia è soddisfatta dalla classe astratta. So che un vantaggio delle interfacce è che se implementiamo un'interfaccia, possiamo anche estendere un'altra classe. C'è qualche altro uso o vantaggio dell'interfaccia in Java?
Questa domanda è stata posta molte volte prima, in diverse forme. –
Per implementare un'interfaccia, tutti i metodi definiti da tale interfaccia devono apparire nel codice sorgente prima che la classe venga compilata correttamente. In questo modo l'interfaccia consente a una classe di diventare più formale riguardo al comportamento che promette di fornire. –