Java 枚举类声明并将其用于另一个类
我有两个类Java 枚举类声明并将其用于另一个类,java,enums,Java,Enums,我有两个类FishType和Fish FishType是标准鱼类分类的枚举,包括以下成员: { Shark, Ray, Eel, } Fish类为: Name : String Classificiation : FishType 所以基本上,我想为'FishType'枚举类的“Fish”声明属性 如何在java中实现它?您可以这样做 class Fish{ enum FishType{ SHARK, RAY, EEL
FishType
和Fish
FishType
是标准鱼类分类的枚举,包括以下成员:
{
Shark,
Ray,
Eel,
}
Fish
类为:
Name : String
Classificiation : FishType
所以基本上,我想为'FishType'枚举类的“Fish”声明属性
如何在java中实现它?您可以这样做
class Fish{
enum FishType{
SHARK,
RAY,
EEL
}
FishType fishType = FishType.SHARK;
}
您还可以像标记任何其他类一样标记
enum
类public
,以提高可见性。enum是一个特殊的类,它为enum表示的每个命名常量都有预定义的实例。Fish是一个类,FishType应该是enum。请参见-1:FishType
未定义(因为您将其命名为EntityType
),如果没有构造函数,则无法为enum值使用其他字符串名称。@IngoBürk,如果没有构造函数,就不能为枚举值使用其他字符串名称,这是真的吗?我相信最近的java版本支持这种类型的代码。这些天我经常使用它。在1.7.0_09中它不起作用。如果您认为它在任何版本中都有效,请澄清该版本(也可以试着编译您自己的代码,看看它是否有效——我不这么认为)。
public class Fish {
private FishType type;
private String name;
// ... some methods.
}
public class Fish {
enum FishType /* Edited */ {
Shark("Shark"),
Ray("Ray"),
Eel("Eel")
}
private String name;
private FishType classification;
}