1700481715
drw-rw-rw root system 1024 2009-8-20 10:23 file2
1700481716
1700481717
drw-rw-rw root system 1024 2009-8-20 10:23 file3
1700481718
1700481719
#ls-a
1700481720
1700481721
.
1700481722
1700481723
..
1700481724
1700481725
file1
1700481726
1700481727
file2
1700481728
1700481729
file3
1700481730
1700481731
#quit
1700481732
1700481733
我们已经实现了在Windows下操作UNIX命令的功能,但是仅仅一个ls命令族是不够的,我们要扩展,把一百多个命令都扩展出来,怎么扩展呢?现在增加一个df命令族,显示磁盘的大小,只要增加类图就成,如图34-5所示。
1700481734
1700481735
1700481736
1700481737
1700481738
图34-5 扩展df命令后的类图
1700481739
1700481740
仅仅增加了粗框的部分,也就是增加DFCommand、AbstractDF以及实现类就可以完成扩展功能。先看AbstractDF代码,如代码清单34-14所示。
1700481741
1700481742
代码清单34-14 df命令的抽象类
1700481743
1700481744
public abstract class AbstractDF extends CommandName{
1700481745
1700481746
//默认参数
1700481747
1700481748
public final static String DEFAULT_PARAM=””;
1700481749
1700481750
//参数k
1700481751
1700481752
public final static String K_PARAM=“k”;
1700481753
1700481754
//参数g
1700481755
1700481756
public final static String G_PARAM=“g”;
1700481757
1700481758
}
1700481759
1700481760
与前面一样的功能,定义选项名称。接下来是三个实现类,都非常简单,如代码清单34-15所示。
1700481761
1700481762
代码清单34-15 df命令的具体实现类
1700481763
1700481764
public class DF extends AbstractDF{
[
上一页 ]
[ :1.700481715e+09 ]
[
下一页 ]