duplicados posibles:
Abstract class and Interface class?
Java: interface/abstract classes/abstract method¿cuál es el uso real de la interfaz en java?
En Java, sea cual sea el uso de la interfaz se ha cumplido por clase abstracta. Sé que una ventaja de las interfaces es que si implementamos una interfaz, también podemos extender otra clase. ¿Hay algún otro uso o ventaja de la interfaz en Java?
Esta pregunta se ha hecho muchas veces antes, en diferentes formas. –
Para implementar una interfaz, todos los métodos definidos por esa interfaz deben aparecer en su código fuente antes de que la clase se compile correctamente. De esta manera, la interfaz permite que una clase se vuelva más formal sobre el comportamiento que promete proporcionar. –