对适配者模式的认识

       适配者模式,顾名思义是为了适配一个已经存在的接口而存在的,在开发中,总会遇到需要用到别人的代码亦或者开放接口或者是使用老代码,但是在使用的过程中,很多接口虽然和我们想要的具有类似或者相同的功能,但是一些接口命名方式等却不是我们需要的。就好比我们去国外旅游,我们自带的充电器是支持220V的,但是有些国家的标准电压是110V的,当我们需要给手机充电的时候,那我们该怎么办呢,找个电源适配器来适配呀。这里就存在三个接口:

1.手机原装充电器(Adaptee);

2.电源适配器(Adapter);

3.给手机充电(Target);

正常情况下,我们利用Adaptee是可以给手机充电的,当在国外时候需要用到Adapter加上Adaptee才能实现给手机充电的功能;其逻辑图如下所示:



    接下来我们来用Java代码来模拟电源充电把适配器模式给实现:

package DesignPattern;
class PhoneCharged{
public void getCharge(){
System.out.println("我需要220V电压");
}
}
class Adaptee {
public void ChargePhone(){
System.out.println("我提供220V电压充电");
}
}
class Adapter extends PhoneCharged{
Adaptee ada=new Adaptee();
public void getCharge(){
ada.ChargePhone();
}
}
public class AdapterPattern {
public static void main(){
//客户端代码
PhoneCharged phone=new Adapter();
phone.getCharge();
}


}

总结:

  实现代码的过程中要注意到要Adapter中调用被适配者Adaptee的对象,所遵照的接口格式是Target的格式。适配器有两种适配,类适配和对象适配,由于java不支持多重继承,所以这里只能利用对象适配。


猜你喜欢

转载自blog.csdn.net/horero/article/details/53837164