Back to questions
Junior — Middle
107
Можете объяснить, что означает понятие абстрактного класса в объектно-ориентированном программировании?
Companies where asked
Grotem
Answer from AI
sobes.tech AI
Абстрактный класс в объектно-ориентированном программировании — это класс, который не предназначен для создания экземпляров напрямую. Он служит как шаблон для других классов и может содержать как реализованные методы, так и абстрактные (без реализации), которые должны быть реализованы в подклассах.
Например, в Dart (язык Flutter) абстрактный класс объявляется с помощью ключевого слова abstract:
abstract class Animal {
void makeSound(); // абстрактный метод
void breathe() {
print('Дышит'); // реализованный метод
}
}
class Dog extends Animal {
@override
void makeSound() {
print('Гав');
}
}
void main() {
// Animal animal = Animal(); // Ошибка: нельзя создать экземпляр абстрактного класса
Dog dog = Dog();
dog.makeSound(); // Гав
dog.breathe(); // Дышит
}
Таким образом, абстрактный класс задаёт общий интерфейс и базовую функциональность, а конкретные классы реализуют детали.