Java Enums值与Generics一起使用

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

    private Enum(Class<? extends Object> clazz,String description,Object instance) {}
}

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

解决方法

JLS不允许枚举的类型参数:
EnumDeclaration:
    ClassModifiers(opt) enum Identifier Interfaces(opt) EnumBody

EnumBody:
    { EnumConstants(opt),(opt) EnumBodyDeclarations(opt) }

猜你在找的Java相关文章