Мне показалось, что я хорошо разбираюсь в Java-дженериках, но потом я нашел в java.lang.Enum следующее:
class Enum<E extends Enum<E>>
Может кто-нибудь объяснить, как интерпретировать этот параметр типа? Бонусные баллы за предоставление других примеров того, где можно использовать аналогичный параметр.