重拾设计模式-适配器模式

简介:
适配器模式属于结构性设计模式。功能是将一个类的接口转换成其他使用者希望的另外一个接口,这样使得原来由于接口兼容问题不能使用的接口也可以使用了。常见于新老系统兼容问题处理。

具体实现及代码测试如下

/**
 * 被适配的类
 * @author dedu
 *
 */
public class Adaptee {
	public  void message() {
		System.out.println("我是原有系统接口对象");
	}
}
/**
 * 适配器(可使用类适配方式或者对象适配方式进行实现)
 * @author dedu
 *
 */
public class Adapter implements Target {

	private Adaptee adaptee;
	
	public Adapter(Adaptee adaptee) {
		this.adaptee = adaptee;
	}

	@Override
	public void handle() {
		System.out.println("进行适配");
		adaptee.message();
	}

}
class AdapterExt extends Adaptee implements Target {
	
	@Override
	public void handle() {
		System.out.println("进行适配");
		super.message();
	}

}
public interface Target {
	/**
	 * 希望的接口方式
	 */
	void handle();
}
/**
 * 客户端接口
 * @author dedu
 *
 */
public class Client {
	public void receive(Target target) {
		target.handle();
	}
}

测试

//JDK中,InputStreamReader OutputStreamWriter就是基于适配器模式
	public static void main(String[] args) {
		Adaptee adaptee = new Adaptee();
		Target target = new Adapter(adaptee);
		Client client = new Client();
		client.receive(target);
	}
总结说明:
Adaptee是需要适配的类,及原始类
Adapter是适配器,是具体进行适配的类,它通过在类中包装一个原始类对象把源接口转成目标接口
Target是客户端所需要的接口,是目标接口,常是接口形式体现。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值