Junior
Как може да се демонстрира, че методите на абстрактен клас са задължителни за преопределяне?
sobes.tech AI
Отговор от AI
В Android (Java/Kotlin) абстрактен клас може да съдържа абстрактни методи — методи без реализация, които задължително трябва да бъдат презаписани в подкласите. Ако подкласът не ги реализира, кодът няма да се компилира.
Пример на Java:
abstract class Animal {
// Абстрактен метод, задължителен за презаписване
abstract void makeSound();
}
class Dog extends Animal {
@Override
void makeSound() {
System.out.println("Гав-гав");
}
}
// Ако се опитате да създадете клас без да реализирате makeSound(), ще получите грешка при компилация
По този начин наличието на абстрактен метод принуждава всички подкласове да го реализират, осигурявайки полиморфизъм и спазване на принципите SOLID.