У меня есть три класса Java. Первые два класса распространяются на ClassA
, а последний распространяется на ClassB
.Расширение общего класса
Class1 extends ClassA
Class2 extends ClassA
Class3 extends ClassB
У меня есть несколько дублированных методов в трех классах (Class1-3). Для того, чтобы избежать необходимости их дублирования я добавил ClassCommon
так:
Class1 extends (ClassCommon extends ClassA)
Class2 extends (ClassCommon extends ClassA)
Class3 extends ClassB
Так что мои дублированные методы теперь в ClassCommon
, но я до сих пор дублируется метод между Class3
и ClassCommon
.
Надеюсь, я чувствую до сих пор.
Мой вопрос: есть в любом случае, используя общие типы, чтобы иметь такую конфигурацию:
Class1 extends ClassCommon<ClassA>
Class2 extends ClassCommon<ClassA>
Class3 extends ClassCommon<ClassB>
ClassCommon<E> extends E
Нет, нет. –
все равно, чтобы избежать дублирования в моем примере? –
Каков типичный параметр типа «E», который должен представлять? Любой тип? Один из ваших занятий? – rgettman