打字猴:1.700481102e+09
1700481102
1700481103 public final static String L_PARAM=“l”;
1700481104
1700481105 }
1700481106
1700481107 很惊讶,是吗?怎么是个空的抽象类?是的,确实是一个空类,只定义了3个参数名称,它有两个职责:
1700481108
1700481109 ❑标记ls命令族。
1700481110
1700481111 ❑个性化处理。
1700481112
1700481113 因为现在还没有思考清楚ls有什么个性(可以把命令的选项也认为是其个性化数据),所以先写个空类放在这里,以后想清楚了再填写上去,留下一些可扩展的类也许会给未来带来不可估量的优点。
1700481114
1700481115 我们再来看ls不带任何参数的命令处理,如代码清单34-3所示。
1700481116
1700481117 代码清单34-3 ls命令
1700481118
1700481119 public class LS extends AbstractLS{
1700481120
1700481121 //最简单的ls命令
1700481122
1700481123 protected String echo(CommandVO vo){
1700481124
1700481125 return FileManager.ls(vo.formatData());
1700481126
1700481127 }
1700481128
1700481129 //参数为空
1700481130
1700481131 protected String getOperateParam(){
1700481132
1700481133 return super.DEFAULT_PARAM;
1700481134
1700481135 }
1700481136
1700481137 }
1700481138
1700481139 太简单了,首先定义了自己能处理什么样的参数,即只能处理不带参数的ls命令,getOperateParam返回一个长度为零的字符串,就是说该类作为链上的一个节点,只处理没有参数的ls命令。echo方法是执行ls命令,通过调用操作系统相关的命令返回结果。我们再来看ls-l命令,如代码清单34-4所示。
1700481140
1700481141 代码清单34-4 ls-l命令
1700481142
1700481143 public class LS_L extends AbstractLS{
1700481144
1700481145 protected String echo(CommandVO vo){
1700481146
1700481147 return FileManager.ls_l(vo.formatData());
1700481148
1700481149 }
1700481150
1700481151 //l选项
[ 上一页 ]  [ :1.700481102e+09 ]  [ 下一页 ]