枚举和模板方法

时间:2012-01-10 07:33:49

标签: java enums

Enum基本上是一个特殊的类类型,可以像任何其他类一样拥有方法和字段。任何人都知道Enums模板方法。请给出枚举上的模板方法的真实示例。你能解释一下Enum Reverse Lookups。

2 个答案:

答案 0 :(得分:6)

Java 5.0 Enum tricks,请特别关注视频。

以下是“命令”枚举的简单示例:

public enum Toy {
     DOLL() {
          @Override public void execute() { 
               System.out.println("I'm a doll."); 
          }
     },
     SOLDIER() {
          @Override public void execute() { 
               System.out.println("I'm a soldier."); 
          }
     };
     //template method
     public abstract void execute();
}

这里的对象Doll和Soldier都具有函数execute()的不同实现。

答案 1 :(得分:2)

应用“模板方法”设计模式,可以创建工厂或命令对象的枚举,但是可以创建一组已定义的对象。这是一个简单的example of a "command" enumeration:

您还将通过上述链接获得Enum Reverse Lookups的解释