Sobes.tech
Middle

¿Pueden los interfaces tener métodos con implementación o no?

sobes.tech AI

Respuesta de la IA

En las interfaces clásicas, por ejemplo en Java hasta la versión 8, los métodos no pueden tener implementación; solo se declaran, y la implementación se proporciona en las clases que implementan esa interfaz.

A partir de Java 8, las interfaces comenzaron a incluir métodos con implementación, llamados métodos por defecto. Estos permiten definir una implementación estándar que puede ser sobrescrita en las clases.

Ejemplo:

public interface MyInterface {
    void abstractMethod(); // sin implementación

    default void defaultMethod() {
        System.out.println("Implementación por defecto");
    }
}

De esta forma, las interfaces pueden contener tanto métodos abstractos sin implementación como métodos con implementación (default, static). Esto amplía las capacidades de las interfaces y simplifica la evolución de las API.