Параметр type является только заполнителем для дженериков только во время компиляции, это фактический тип.
Попытка найти обходное решение для множественного наследования на языке, который его не поддерживает, вероятно, является хорошим показателем того, что в дизайне есть недостаток. Сказать A<T extends B> extends T
, очевидно, не удастся, поскольку это даже не означает, что вы надеетесь, что это означает - <T extends B>
означает только то, что T
имеет тип, который является B
. Добавление extends T
ничего не значит, потому что T
не определено в этом классе. Опять же, это тип во время компиляции - фактический тип T не доступен напрямую во время выполнения.
Вы действительно уверены, что наиболее правильно достигается с помощью множественного наследования, а не композиции? Также возможно, что вы пытаетесь заставить A
сделать слишком много вещей.
Более конкретный пример может позволить другим дать больше отзывов о самом дизайне.