适配器模式

1 解决问题

已有一个功能类Adaptee,是可以解决a问题的类

而客户端确实有一部分需要解决a问题,但是它被限制只能调用Target的接口

 

于是在中间加一个Adapter,用户过渡

 

2解决办法

一个Adatpee 这是固有的类

一个Target 这是固有的类

中间加一个Adapter,它继承(实现)Target,同时里面有个Adaptee对象。

例如

Target

public class Target {
	public void doSomething(){
		System.out.println("oo");
	}
}

 Adaptee

public class Adaptee {
	public void doAotherthing(){
		System.out.println("pp");
	}
}

 于是加上Adapter过渡

public class Adapter extends Target{
	Adaptee ee = new Adaptee();
	public void doSomething(){
		ee.doAotherthing();
	}
}

 客户端调用时

public static void main() {
	Target t = new Adapter();
	t.doSomething();
}

你可能感兴趣的:(OO)