Sobes.tech
Junior — Middle

Je možné obmedziť podtriedu v zmene implementácií metódov základnej triedy?

sobes.tech AI

Odpoveď od AI

V Jave je mogoče omejiti možnost prepisovanja metod v podrazredih z uporabo ključne besede final. Če je metoda deklarirana kot final v osnovni razred, podrazred ne bo mogel spremeniti njene implementacije.

Primer:

class Base {
    public final void doSomething() {
        System.out.println("Implementacija končne metode");
    }
}

class Subclass extends Base {
    // Napaka pri prevajanju: ne moreš prepisati finalne metode
    // public void doSomething() {
    //     System.out.println("Poskus prepisovanja");
    // }
}

Tako final ščiti metodo pred prepisovanjem v podrazredih.