Open arkulo56 opened 9 years ago
如果一个前辈写的类(具有一定的功能,且其他程序在调用,不能修改)在系统中有新的需求,需要改造加入其他的东西或者变更内部结构。这时候暴力的解决办法就是直接将这个类的文件复制一份,然后修改新的文件重新改出一份新的。这种做法的缺点是,如果两个类(新的和旧的)通用的功能需要整体修改,我们就需要修改两份代码,维护起来很不方便!
我们来看看用适配器怎么解决这种问题
从图中就可以看出,适配器是分为类适配器和对象适配器两种的,其实远离比较简单:
如果一个前辈写的类(具有一定的功能,且其他程序在调用,不能修改)在系统中有新的需求,需要改造加入其他的东西或者变更内部结构。这时候暴力的解决办法就是直接将这个类的文件复制一份,然后修改新的文件重新改出一份新的。这种做法的缺点是,如果两个类(新的和旧的)通用的功能需要整体修改,我们就需要修改两份代码,维护起来很不方便!
我们来看看用适配器怎么解决这种问题
类图和时序图
从图中就可以看出,适配器是分为类适配器和对象适配器两种的,其实远离比较简单: