设计模式练习(6)——适配器模式

适配器模式

一、题目:

某OA系统需要提供一个加密模块,将用户机密信息(如口令、邮箱等)加密之后,存储在数据库中,系统已经定义好了数据库操作类,为了提高开发效率,现需要重用已有的加密算法,这些加密算法封装在由第三方提供的类中,有些甚至没有源代码,试使用适配器模式,设计该模块,在不修改现有类的基础上,重用第三方加密算法。
现有一个接口DataOperation定义了排序算法sort(int []),和查找方法search(int[],int),已知类QuikSort的quickSort方法实现了快速排序算法,类BinarySearch类的binarySearch(int[], int)实现了二分查找法,现使用适配器模式设计一个系统,在不修改源代码的情况下将类,将QuickSort和类BinarySearch类的方法实适配到DataOperation接口。
(1)绘制适配器模式结构视图;
(2)请绘制该实例类图,并代码实现。

二、所用模式结构视图:

这里写图片描述

三、实例类图:

这里写图片描述

四、实例实现代码:

(因为区分,所以在类的前面加了Gj19)

抽象操作类:目标接口

package AdapterPattern;
/**
 * 抽象操作类:目标接口
 * @author gong
 *
 */
public interface Gj19DataOperation {
   
    public int[] sort(int array[]); //排序  
    public int search(int array[],int key); //查找  
}

操作适配器:适配器

package AdapterPattern;
/**
 * 操作适配器:适配器
 * @author gong
 *
 */
public class Gj19OperationAdapter implements Gj19DataOperation {
   
    private Gj19QuickSort sortObj; // 定义适配者Gj
  • 3
    点赞
  • 27
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值