Sobes.tech
Middle

Môžu rozhrania mať metódy s implementáciou alebo bez nej?

sobes.tech AI

Odpoveď od AI

V klasických rozhraniach, napríklad v Jave do verzie 8, nemôžu mať metódy s implementáciou — sú iba deklarované a implementácia je poskytovaná v triedach, ktoré toto rozhranie implementujú.

Od Javy 8 sa v rozhraniach objavili metódy s implementáciou — tzv. default metódy. Umožňujú definovať štandardnú implementáciu, ktorú môžu triedy prepísať.

Príklad:

public interface MyInterface {
    void abstractMethod(); // bez implementácie

    default void defaultMethod() {
        System.out.println("Štandardná implementácia");
    }
}

Týmto spôsobom môžu rozhrania obsahovať ako abstraktné metódy bez implementácie, tak aj metódy s implementáciou (default, static). To rozširuje možnosti rozhraní a zjednodušuje evolúciu API.