我经常遇到这样的情况,我需要一个类的变量,这个变量可以表示为简单的枚举类型,例如:
private enum PageOrder {DOWN_THEN_OVER, OVER_THEN_DOWN};
如果a在包含变量的类中声明枚举类型,那么我必须使用限定名MyClass.PageOrder
,这很不舒服。但是如果我创建一个新的类,我只有一个简单的枚举声明的类,这对我来说似乎有点过分了。
出于这个原因,我经常使用整数而不是枚举类型。
对这个话题有什么意见/建议吗?
发布于 2014-09-24 17:50:33
你可以做到
import static yourpkg.MyClass.PageOrder;
从inner enums are always static开始,这将一直起作用。请注意,即使在定义MyClass
类的文件中,这也是有效的。
发布于 2014-09-25 06:26:45
如果你使用枚举仅仅是为了给数字起一个编码器友好的名字,而且你永远不需要把它们写到屏幕上,或者从文件中读取它们,那么这完全是一种夸大其词。不幸的是,java中的所有东西都必须是一个类。如果这就是您使用枚举的方式,我建议使用常量。
如果您希望以用户友好的格式打印枚举的值,或者将值转换为枚举,那么您可能确实需要该类。
https://stackoverflow.com/questions/26013755
复制相似问题