java - 当枚举被声明为通用参数时获取枚举的 values()

标签 java generics enums

下面显示的代码确实有效,因为方法 values() 是静态的。我的问题是,如果 B 不是通用的,我该如何实现下面的代码。

class A<B extends Enum<B>> {
    public A() {
        for (B b : b.values()) {

        }
    }
}

我可以想到两种解决方案:

  1. 将枚举值传递给 A 的构造函数
  2. 让 B 实现一个接口(interface),该接口(interface)定义了获取枚举值的方法。

在我看来,两者都很困惑。谁有更好的解决方案?

最佳答案

尝试使用 getEnumConstants()

关于java - 当枚举被声明为通用参数时获取枚举的 values(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8792242/

相关文章:

java - 将一个提供商的 JCEKS key 转换为另一个提供商的另一个存储

java - Selenium ChromeDriver 不会使用默认用户数据来访问 url

一切可为空的 C# 泛型类型约束

java - 无法仅为 Enum 创建通用 javax validator

java - Java 中枚举和基于枚举的类实现之间的优缺点是什么?

java匿名类枚举编译错误

枚举与架构 : problem with jaxb or xsd? 不匹配

Java RMI 代码库不工作

java - 使用 Swing 绘制选择框

java - 强制 Java 方法返回类型以适应特定的通用签名