Sobes.tech
Middle

Могат ли интерфейсите да имат методи с реализация или без?

sobes.tech AI

Отговор от AI

В класическите интерфейси, например в Java до версия 8, методите не могат да имат реализация — те се обявяват само, а реализацията се предоставя в класовете, които реализират този интерфейс.

От Java 8 нататък, в интерфейсите се появиха методи с реализация — default методи. Те позволяват да се зададе стандартна реализация, която може да бъде презаписана в класовете.

Пример:

public interface MyInterface {
    void abstractMethod(); // без реализация

    default void defaultMethod() {
        System.out.println("Стандартна реализация");
    }
}

По този начин, интерфейсите могат да съдържат както абстрактни методи без реализация, така и методи с реализация (default, static). Това разширява възможностите на интерфейсите и улеснява еволюцията на API.