设计模式中的适配器(也叫变压器)模式:把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法一起工作的两个类能够一起工作。适配器类可以根据参数返还一个合适的实例给客户端。
适配器模式分类:1.类的适配器模式(采用继承实现)
2.对象适配器(采用对象组合方式实现)
第一种、类的适配器
如图:
如上图所表述的情况,
目标抽象角色(Target):定义客户所期待要使用的接口,我们把东北人(随便举得一个只会讲国语的人)当做目标客户,该目标客户能听懂的语言是国语,所以这里就抽象出一个讲国语的接口。
源角色(Adaptee):表示需要被适配的接口,在这里指的是那位只会说粤语的香港人,图中所对应的类是(HKPeople)
适配器角色(Adapter):该适配器是用来把源接口(指粤语)转换成符合要求的(指东北人能听懂的国语)xxx,本例中的Adapter相当于广东人
好了,以上就是一个类适配器的结构,在实际的运用中还是挺多的,可以自己仔细琢磨琢磨,对应的关键代码如下:
//定义一个接口
public interface Target{
public void speakMandarin();
}
//Adaptee
public class Adaptee{
public void speakCantonese(){
System.out.println("讲粤语");
}
}
//Adapter
public class Adapter extends Adaptee implements Target{
//实现接口Target中的方法,然后在该方法中转换说粤语的方法
@Override
public void speak Mandarin(){
this.speakCantonese();
}
}
第二种、对象适配器
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请
点击举报。