如何处理从类传递给另一个类的枚举。传递的枚举进入Test2
类中的另一个枚举。
以下是我的问题的解释。我知道枚举是最终的,不能覆盖。所以弄清楚了
this.Jun2 = E;
代码只是解释。
class Test1{
enum Junk{A,B,C};
Test2.loader(Junk);
}
class Test2{
enum Junk2{};
public static void loader(enum E)
this.Junk2 = E;
}
...other jobs based on Junk2;
作为抽象类的Test2
类的目的,它处理从Test
类
答案 0 :(得分:2)
您在loader
的签名中指定枚举类型(您需要授予对两个类的枚举的访问权限):
public static void loader(Junk junk)
您已在Test2
中展示了第二个单独的枚举。 Test2
使用Junk
可能更有意义,而不是单独的枚举。如果您使用单独的值,则必须在值之间建立映射(您通常将其作为枚举上的方法实现,例如Junk2.fromJunk(...)
),这是一个维护问题。
旁注:在上文中,我将参数名称从E
更改为junk
。在Java中,压倒性的约定是参数名称以小写字母开头。另外,参数的名称应该以某种方式反映它的含义。 E
可能会建议“枚举”,但哪一个?一般情况下,不要过分,使名称具体到足以在某种程度上有意义。