适配器模式

适配器模式:将一个类的接口转化成客户需要的另外一个接口,Adapter模式原本为那些接口不兼容而不能一起工作的接口设计。

 

设配器模式分为:
示例:

一、类适配器 :通过继承实现

public interface IMailer{
    void sendMail();
}

public class OuterMailer{
    void sendMail();
}

//设配器
public class MailAdapter extends OutMailer implements IMailer{

     public void sendMail(){
             super.sendMail();
     }
} 

二、对象适配器:通过委托

//设配器
public class MailAdapter implements IMailer{
  private OutMailer  mailer;//委托对象

  public void sendMail(){
      mailer=new OutMailer();
      mailer.sendMail(); 
  }
}
应用场景:
1、在使用第三方库或者API时,可以使用设配器来转化来满足业务系统的要求。
2、旧有系统和新系统的对接时。
3、数据之间使用程序转化数据时。
我们的新系统中有一个客户(Client)需要一个Target的接口,原有的系统中有一个现成的类(Adaptee),该类具有Target接口所需的功能。但是Adaptee类提供的接口却与客户需要的Target接口不同。在这种情况下,我们希望将现有的接口(Adaptee)转化(convert)为客户类期望的接口(Target),这样不仅保证没有修改原有的系统,更主要的是还能保证对现有类的重用。若不进行这样的转化,客户类就不能利用现有类所提供的功能。

你可能感兴趣的:(设计模式)