Junior
Ako možno dokázať, že metódy abstraktnej triedy sú povinné na prepisovanie?
sobes.tech AI
Odpoveď od AI
V Android (Java/Kotlin) môže abstraktná trieda obsahovať abstraktné metódy, čo sú metódy bez implementácie, ktoré musia byť prepísané v podtriedach. Ak podtrieda tieto metódy neimplementuje, kód sa nespustí.
Príklad v Jave:
abstract class Animal {
// Abstraktná metóda, povinná na prepísanie
abstract void makeSound();
}
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Hav-hav");
}
}
// Ak sa pokúsite vytvoriť triedu bez implementácie makeSound(), dôjde k chybe pri kompilácii
Týmto spôsobom existencia abstraktnej metódy núti všetky podtriedy ju implementovať, čím zabezpečuje polymorfizmus a dodržiavanie princípov SOLID.