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.