Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/oop/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我可以传递并使用enum作为变量吗?_Java_Oop_Generics_Enums_Polymorphism - Fatal编程技术网

Java 我可以传递并使用enum作为变量吗?

Java 我可以传递并使用enum作为变量吗?,java,oop,generics,enums,polymorphism,Java,Oop,Generics,Enums,Polymorphism,我正在开发一些调试工具。我现在要做的是为tester提供一个GUI窗口,该窗口将显示Enum条目——它们的名称和人类可读的值。我希望基本对话框类尽可能通用,因为要查看多个枚举 此外,其中一些枚举实现公共接口。例如 public enum DaysOfTheWeek implements CanBeTranslated { ... 因此,我试图在此基础上再接再厉。经过一段时间的思考,我创建了这个变量: Class<Enum<? extends CanBeTranslated>&

我正在开发一些调试工具。我现在要做的是为tester提供一个GUI窗口,该窗口将显示
Enum
条目——它们的名称和人类可读的值。我希望基本对话框类尽可能通用,因为要查看多个枚举

此外,其中一些枚举实现公共接口。例如

public enum DaysOfTheWeek implements CanBeTranslated { ...
因此,我试图在此基础上再接再厉。经过一段时间的思考,我创建了这个变量:

Class<Enum<? extends CanBeTranslated>> entries;
有没有一种方法可以在变量中使用抽象(如“notspecific one”)枚举?我需要访问枚举才能获得字段名,这很重要-如果不是这样,我可以使用值数组

还请记住,这个问题是从

  • 编写调试代码
  • 出于好奇进行实验

当我问一个奇怪的问题,关于为了好玩而做不同的事情时,我遇到了专业Java开发人员的一种非常敌对的态度,因此我提出了这个免责声明。

这应该是你想要的:

Class<? extends CanBeTranslated> entries = DaysOfTheWeek.class;
for (CanBeTranslated entry : entries.getEnumConstants()) {
    // ...
}
Class<? extends CanBeTranslated> entries = DaysOfTheWeek.class;
for (CanBeTranslated entry : entries.getEnumConstants()) {
    // ...
}