适配器模式

适配适配,说到底就是将老旧代码的功能组合成一个新类。比如我以前有排序类进行排序,有二分查找类进行二分查找,代码太复杂了,我找不到我也不敢随随便便改代码。现在有一个新需求,需要将学生的成绩进行排序或查找排名

将需求抽象

interface Score{
    int [] sort(int arr[]);
    int binarySearch(int arr[],int score);
}

排序老代码

class Sort{
	int [] sort(int arr[]){实现.............}
	............
	其他业务代码
	............
}

二分查找老代码

class BinarySearch{
	int binarySearch(int arr[],int score){实现.............}
	............
	其他业务代码
	............
}

新需求的实现类

class ScoreImpl implements Score{
private Sort sort=new Sort();
private BinarySearch binirySearch=new BinarySearch();
    @Override
    public int[] Sort(int[] arr) {
        return sort.sort(arr);
    }

    @Override
    public int BinarySearch(int[] arr, int score) {
        return binarySearch.binarySearch(arr,score);
    }
}

完结撒花,我也看不懂这是什么操作,就是简简单单的不用教都会的用法啊,当初被设计模式折磨。其实完完全全就是为了总结出一套规范出来的文字而已。大可不必陷入文字。核心就是将一些老旧功能组合成新的类,拿到老旧类的对象直接调用对应接口就行了。


版权声明:本文为qq_39804316原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。