打字猴:1.700481615e+09
1700481615 public enum CommandEnum{
1700481616
1700481617 ls(“com.cbf4life.common.command.LSCommand”);
1700481618
1700481619 private String value=””;
1700481620
1700481621 //定义构造函数,目的是Data(value)类型的相匹配
1700481622
1700481623 private CommandEnum(String value){
1700481624
1700481625 this.value=value;
1700481626
1700481627 }
1700481628
1700481629 public String getValue(){
1700481630
1700481631 return this.value;
1700481632
1700481633 }
1700481634
1700481635 //返回所有的enum对象
1700481636
1700481637 public static List<String>getNames(){
1700481638
1700481639 CommandEnum[]commandEnum=CommandEnum.values();
1700481640
1700481641 List<String>names=new ArrayList<String>();
1700481642
1700481643 for(CommandEnum c:commandEnum){
1700481644
1700481645 names.add(c.name());
1700481646
1700481647 }
1700481648
1700481649 return names;
1700481650
1700481651 }
1700481652
1700481653 }
1700481654
1700481655 为什么要用枚举类型?用一个接口来管理也是很容易实现的。注意CommandEnum中的构造函数CommandEnum(String value)和getValue类,没有新建一个Enum对象,但是可以直接使用CommandEnum.ls.getValue方法获得值,这就是Enum类型的独特地方。再看下面:
1700481656
1700481657 ls(“com.cbf4life.common.command.LSCommand”);
1700481658
1700481659 是不是很特别?是的,枚举的基本功能就是定义默认可选值,但是Java中的枚举功能又增强了很多,可以添加方法和属性,基本上就是一个特殊的类。若要详细了解Enum,读者可以翻阅一下相关语法书。
1700481660
1700481661 现在剩下的工作就是写一个Client类,然后看看运行情况如何,如代码清单34-13所示。
1700481662
1700481663 代码清单34-13 场景类
1700481664
[ 上一页 ]  [ :1.700481615e+09 ]  [ 下一页 ]