我是这样想的,您学习设计模式,首先要明确两点,用在什么情况适合;用了此模式,对之后扩展的影响性如何。
适配器,我觉得,首先是这样,有一部分接口是您由于一些原因不能修改,或者不愿修改,另一部分接口是由您控制,然后,您需要把这两部分接口汇总起来,给出Adapter接口,比如您需要使用一些开源API,而开源组件又不能完全满足您需求,你还要加入部分自己的功能接口时。
用了之后的好处,我想到一点,假设一个新的电源出现了 PowerSourceC,那么您的修改是少量的可控的,而且不影响PowerSourceA,PowerSourceB的。
适配器,我觉得,首先是这样,有一部分接口是您由于一些原因不能修改,或者不愿修改,另一部分接口是由您控制,然后,您需要把这两部分接口汇总起来,给出Adapter接口,比如您需要使用一些开源API,而开源组件又不能完全满足您需求,你还要加入部分自己的功能接口时。
用了之后的好处,我想到一点,假设一个新的电源出现了 PowerSourceC,那么您的修改是少量的可控的,而且不影响PowerSourceA,PowerSourceB的。
解决方案 »
- 怎样隔一段时间后调用一个方法?这是我写的代码,希望大家指教,急用!
- 问个题外话,校内是通过什么手段判断照片是不是真人的?
- 如何使用java读取和保存session
- 请教关于异常的处理,红色处是在下不理解之处,望各位详细指教
- 请推荐一本JAVA初学者的书籍
- 在一个JPanel中怎样得到另一个JPanel中产生ActionEvent事件的事件源~~~~~~~~~在线等
- 急!!文件操作的问题?
- 比较困惑的一个线程同步问题
- 开发java程序中碰到一个数值的显示问题
- 删除某一路径(如d:/temp)下的文件1.doc,程序怎么写?
- 什么情况下不能用反射机制?
- 反编译jar包修改了里面的java文件如何编译回去啊?
{
private PowerSourceA a;
private PowerSourceB b;
public Adapter(PowerSourceA a){
this.a = a;
}
public void set(){
a.insert();
}
}
class Adapter implements PowerSourceA
{
private PowerSourceB b;
public Adapter(PowerSourceB b){
this.b = b;
}
public void insert(){
b.set();
}
}你如果是针对B电源建立的A电源适配,那么当你直接调用A电源的方法时,会空指针错误,所以不如两者拆分,分开处理