Наследование Java enum

Возможный дубликат:
добавить значения в перечисление

Почему перечисления в Java не могут наследовать из других перечислений? Почему это реализовано таким образом?

Ответ 1

Пример, украденный здесь

Так как добавление элементов в перечисление будет эффективно создавать супер класс, а не подкласс.

Рассмотрим:

 enum First {One, Two}   
 enum Second extends First {Three, Four}   

 First a = Second.Four;   // clearly illegal 
 Second a = First.One;  // should work

Это наоборот. работает с обычными классами. Я думаю, это может быть реализовано таким образом, но было бы сложнее реализовать чем это казалось бы, и это безусловно, путают людей.