Абстрактный класс — это класс, который нельзя создать напрямую с помощью оператора new. Он служит базой для других классов и может содержать абстрактные методы (без реализации) и обычные методы (с реализацией). Абстрактные классы определяются с ключевым словом abstract.
Ключевые особенности:
- Нельзя инстанцировать: Невозможно создать объект самого абстрактного класса.
- Может содержать абстрактные методы: Методы без тела, которые должны быть переопределены в дочерних классах.
- Может содержать обычные методы: Методы с реализацией, которые могут быть унаследованы или переопределены.
- Наследование: Дочерние классы наследуют абстрактный класс и обязаны реализовать все его абстрактные методы.
Пример:
dart