Множественное наследование и зависимости в Kotlin
Прошу совет.
/** Kotlin */
interface IBase
interface I1 : IBase
interface I2 : IBase
class C1 : IBase, I1, I2
Как видно, от интерфейса IBasе наследуются оба интерфейса и класс. Если я уберу IBase из предков класса C1, то ничего не изменится, т.к. через цепочку зависимостей (IBase -> I1 или I2 -> C1) класс все равно получит доступ к методам IBase. Но я не хотел бы этого делать.
Чем плох такой подход? Если он плох, то как скорректировать код?
Ответы (1 шт):
Автор решения: Commander Tvis
→ Ссылка
Вам остается только спроектировать эту иерархию наследования так, чтобы I1 и I2 не наследовались от IBase.
Избежать при реализации интерфейса реализацию всех его суперинтерфейсов нельзя.