Можно ли использовать композицию, когда оба класса абстрактные?
Например, у меня есть абстрактный класс Тело
(от него я буду создавать конусы
, пирамиды
и т.д.) И есть Абстрактный класс Основание
(то есть в основании конуса
- круг
, в основании пирамиды
- многоугольник
).
Как мне добавить класс основание
в тело
при помощи композиции. Я знаю, что создавать объекты абстрактного класса нельзя. Если есть способ, опишите пожалуйста. Если нет, объясните почему.
public abstract class Body {
protected Base base;
public void setBase(Base base) {
this.base = base;
}
public Base getBase() {
return base;
}
}
Примерный вариант для класса Тело. Наследуя его ваша фигура может получить основание. Как вариант можно еще сделать основание default или protected, в зависимости от потребностей.
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Нужно на выходе получить такую строку 2018-05-08T10:41:00000+07:00
Почему меняется поведение оператора switch при различных способах инициализации управляющей переменной?
Вот пример того, что я имею ввиду: