@KirylLapouski

Зачем нужны абстрактные свойства?

Зачем нужны абстрактные свойства? Нужно ли определять класс абстрактным, если в нём объявлено абстрактное свойство?
  • Вопрос задан
  • 141 просмотр
Решения вопроса 1
qonand
@qonand
Software Engineer
Вы изначально не верно сформулировали вопрос - поэтому и не понятна его суть. Что такое свойства класса? Свойства класса - это характеристики которые его описывают. Для примера возьмем обычный класс стека, какие свойства у него есть?
1. Он хранить в себе множество объектов
2. У него есть информация о количестве хранимых объектов, реализуемая как правило с помощью атрибута(поля) класса
3. У него есть возможность получение объекта по принципу "Первый вошел - последний вышел", реализуемая как правило с помощью метода

Судя по комментариям, Вы спрашиваете про атрибуты(поля) класса - компоненты которые, описывают хранимые данные. Абстрактные атрибуты имеют такое же предназначение как и абстрактные методы, т.е. их задачи:
- декларировать наличие атрибутов которые должны обязательно присутствовать в дочерних классах
- "перелаживать" подробности реализации на дочерние классы. Стоит не забывать что атрибуты классов, как и методы, так же могут иметь разную реализацию - их данные могут храниться в памяти либо вычисляться на лету (и некоторые языки программирования соответственно предусматривают такие варианты реализации)
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@andre_k
С помощью абстрактных методов вы можете определить 'точки' для будущего расширения вашего приложения.
Ответ написан
@vaajnur
веб-программист
абстрактные классы, как и интерфейсы по сути не имеют функциональности, однако полезны в организации кода. Это хорошая манера в оформлении кода.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через TM ID
Похожие вопросы