рекурсивные дженерики?
Пример рекурсивного дженерика:
public abstract class Enum<E extends Enum<E>> {
Так type eraser
Не создавать бесконечный цикл. Не надо пытаться зарезолвить генерик, надо его анализировать.
Не спец, но наверное, когда компилятор переваривает конкретный дефинишен енама enum A, который под капотом class A extends Enum<A>, у компилятора уже имеется факт, что А - это E, и все что надо проверить для E - это что E extends Enum<E>. Подставляем вместо E A и нет больше рекурсии.
Обсуждают сегодня