打字猴:1.700477794e+09
1700477794 //zip格式的解压缩算法
1700477795
1700477796 public boolean uncompress(String source,String to){
1700477797
1700477798 System.out.println(source+”—>”+to+“ZIP解压缩成功!”);
1700477799
1700477800 return true;
1700477801
1700477802 }
1700477803
1700477804 }
1700477805
1700477806 代码清单32-3 gzip压缩算法
1700477807
1700477808 public class Gzip implements Algorithm{
1700477809
1700477810 //gzip的压缩算法
1700477811
1700477812 public boolean compress(String source,String to){
1700477813
1700477814 System.out.println(source+”—>”+to+“GZIP压缩成功!”);
1700477815
1700477816 return true;
1700477817
1700477818 }
1700477819
1700477820 //gzip解压缩算法
1700477821
1700477822 public boolean uncompress(String source,String to){
1700477823
1700477824 System.out.println(source+”—>”+to+“GZIP解压缩成功!”);
1700477825
1700477826 return true;
1700477827
1700477828 }
1700477829
1700477830 }
1700477831
1700477832 这两种压缩算法实现起来都很简单,Java对此都提供了相关的API操作,这里就不再提供详细的编写代码,读者可以参考JDK自己进行实现,或者上网搜索一下,网上有太多类似的源代码。
1700477833
1700477834 两个具体的算法实现了同一个接口,完全遵循依赖倒转原则。我们再来看环境角色,如代码清单32-4所示。
1700477835
1700477836 代码清单32-4 环境角色
1700477837
1700477838 public class Context{
1700477839
1700477840 //指向抽象算法
1700477841
1700477842 private Algorithm al;
1700477843
[ 上一页 ]  [ :1.700477794e+09 ]  [ 下一页 ]