Junior — Middle
Môžete vysvetliť, čo znamená pojem abstraktná trieda v objektovo orientovanom programovaní?
sobes.tech AI
Odpoveď od AI
Abstraktna trieda v objektovo orientovanom programovaní je trieda, ktorá nie je určená na priame vytváranie inštancií. Slúži ako šablóna pre iné triedy a môže obsahovať ako implementované metódy, tak aj abstraktné (bez implementácie), ktoré musia byť implementované v podtriedach.
Napríklad v Dart (jazyk Flutter) je abstraktná trieda deklarovaná pomocou kľúčového slova abstract:
abstract class Animal {
void makeSound(); // abstraktná metóda
void breathe() {
print('Dýcha'); // implementovaná metóda
}
}
class Dog extends Animal {
@override
void makeSound() {
print('Hav');
}
}
void main() {
// Animal animal = Animal(); // Chyba: nie je možné vytvoriť inštanciu abstraktnej triedy
Dog dog = Dog();
dog.makeSound(); // Hav
dog.breathe(); // Dýcha
}
Týmto spôsobom abstraktná trieda definuje všeobecné rozhranie a základnú funkcionalitu, zatiaľ čo konkrétne triedy implementujú detaily.