设计模式---适配器模式的简单实现以及思路

生活中经常使用转接器来进行不同接口之间的转接,例如将笔记本上的接口和键盘上的接口利用适配器连接起来

 

 那么设计模式中的适配器也可以参照于转接器

一、设计思路

   这里存在着Client类(代表笔记本,需要调用usb接口) , Target类(代表usb接口)  Adapter类(代表适配器)   Adaptee(代表键盘)

 

Target接口(usb)代码:

//这是usb接口的抽象
public interface Target {
 public void HandleRequest();
}

Client类(笔记本)代码:

public class Client  {
	//笔记本调用usb进行打字的功能
	public void laptaop(Target t)
	{
		t.HandleRequest();
		//调用usb接口
	}
	 public static void main(String[] args) {
		Client aClient=new Client();
		//电脑一个
		Adaptee adaptee=new Adaptee();
		//键盘一个
		Target target=new Adapter();//usb接口插在适配器上
	    aClient.laptaop(target);
	    //笔记本说我要打字了
	}

}

Adaptee类(键盘)

//键盘类
public class Adaptee {
   public void  request()
   {
	    System.out.println("键盘能打字!");
   }
}

  Adapter类(适配器类)


/**
 * @author zhangyang
 *  适配器类
 *
 */
public class Adapter  extends Adaptee implements Target{

	@Override
	public void HandleRequest() {
		// TODO 自动生成的方法存根
		super.request();
		//因为直接继承的相关的类所以直接调用即可
	}
 
}

//这里使用的是继承的关系,最佳的实现方式应该是组合。因为java中只能实现单继承

public class Adapter  implements Target{
   private Adaptee adaptee;//组合关系
	@Override
	public void HandleRequest() {
		// TODO 自动生成的方法存根
		adaptee.request();
		//因为直接继承的相关的类所以直接调用即可
	}
 
}

实现结果:

二、代码分析

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值