Я знаю, что то, что я хочу сделать, звучит глупо, но послушай:
У меня есть абстрактные классы Entity
и Player
(расширяет Entity
) и неабстрактные классы TestPlayer
(расширяет Player
) и TestMob
(расширяет Entity
).
Теперь я столкнулся со следующей проблемой:
Я хочу реализовать некоторые абстрактные методы в Entity
с той же функциональностью внутри TestPlayer
и TestMob
. Теоретически я мог бы просто создать еще один класс TestEntity
(расширяя Entity
) и наследовать от него TestPlayer
и TestMob
. Но тогда TestPlayer
больше не мог наследовать от Player
.
Реализация функциональности непосредственно внутри Entity
не вариант, так как не все подклассы должны иметь эту функциональность.
Что можно считать приемлемым решением, кроме дублирования кода?
Player
не только добавляет, но и реализует новые методы. - person Androbin   schedule 08.08.2016