Junior — Middle
Jaki jest główny cel tworzenia klas abstrakcyjnych w programowaniu obiektowym?
sobes.tech AI
Odpowiedź od AI
Głównym celem klas abstrakcyjnych jest zdefiniowanie wspólnego szablonu dla grupy powiązanych klas, określenie podstawowej struktury i zachowania, ale bez implementacji wszystkich szczegółów. Klasa abstrakcyjna nie może być bezpośrednio instancjonowana; służy do dziedziczenia i wymusza na klasach potomnych implementację określonych metod. Pomaga to zapewnić spójność i unikać duplikacji kodu.
Przykład w PHP:
abstract class Animal {
abstract public function makeSound();
public function sleep() {
echo "Śpi...";
}
}
class Dog extends Animal {
public function makeSound() {
echo "Hau!";
}
}
$dog = new Dog();
$dog->makeSound(); // Wyświetli: Hau!
$dog->sleep(); // Wyświetli: Śpi...