Junior
Jak można wykazać, że metody klasy abstrakcyjnej są obowiązkowe do nadpisania?
sobes.tech AI
Odpowiedź od AI
W Android (Java/Kotlin) klasa abstrakcyjna może zawierać metody abstrakcyjne, czyli metody bez implementacji, które muszą być nadpisane w podklasach. Jeśli podklasa nie zaimplementuje tych metod, kod nie zostanie skompilowany.
Przykład w Java:
abstract class Animal {
// Metoda abstrakcyjna, obowiązkowa do nadpisania
abstract void makeSound();
}
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Hau hau");
}
}
// Jeśli spróbujesz utworzyć klasę bez implementacji makeSound(), pojawi się błąd kompilacji
W ten sposób obecność metody abstrakcyjnej zmusza wszystkie podklasy do jej implementacji, zapewniając polimorfizm i zgodność z zasadami SOLID.