Java Enums值与Generics一起使用

前端之家收集整理的这篇文章主要介绍了Java Enums值与Generics一起使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我需要这样的东西:
  1. public enum Enum {
  2. ENUM1<Class1>(Class1.class,"A DESCRIPTION",new Class1()),ENUM2<Class2>(Class2.class,new Class2()),ENUM3<Class3>(Class3.class,new Class3());
  3.  
  4. private Enum(Class<? extends Object> clazz,String description,Object instance) {}
  5. }

我需要的:
我定义所有ClassX的不同实例的单个地方(它们扩展了相同的ClassSuper).当然,我可以为每个ClassX定义不同的枚举,但这不是我想要的.

解决方法

JLS不允许枚举的类型参数:
  1. EnumDeclaration:
  2. ClassModifiers(opt) enum Identifier Interfaces(opt) EnumBody
  3.  
  4. EnumBody:
  5. { EnumConstants(opt),(opt) EnumBodyDeclarations(opt) }

猜你在找的Java相关文章