在没有实例的情况下创建枚举有什么用?

时间:2013-07-22 16:58:46

标签: java

我正在阅读并通过枚举实现方案。我想我们可以创建一个枚举 没有任何实例。这种Enum的实际用途是什么?其次Enum也可以实现 一个接口,但显然不能扩展一个类,因为它已经扩展了类Enum。没有实例创建Enum有什么实际好处? 本

3 个答案:

答案 0 :(得分:11)

零成员枚举实际上是Java社区的某个部分使用的实用程序类惯用法(最值得注意的是,Peter Lawrey)。它们是最简洁的,也可以说是保证类不被实例化或子类化的最干净的方式。

当然,在这样的枚举中你不会有任何实例方法;只有静态的。

答案 1 :(得分:2)

Enumclassinterfaces等参考类型。这意味着你可以 很好地适应了原则,“program to interface and not implementation"

答案 2 :(得分:0)

enum的成员不一定要固定到宇宙结束。您可以添加新成员而不会破坏二进制可比性。所以我可以想象创建一个enum来模拟一些概念,该概念目前没有实例,但可能会稍后添加一些。

是否有可能为我们知道肯定永远不会有任何实例的概念创建enum?例如enum NegativeNaturalNumber{}?它可以用于程序中的任何目的吗?谁知道,我们不能肯定地说。