1.概念:将一个接口转换成客户希望的另外一个接口。(该模式使得原本不兼容的类可以一起工作)
2.UML图
(1)对象的Adapter模式结构图
(2)类的Adapter模式结构图
3.代码
(1)对象适配器
public
interface
Target
{
public
void
Request();
}
public
class
Adaptee
{
public
void
SpecificRequest()
{
System.out.println(
"这是原始标准接口!"
);
}
}
public
class
Adapter
implements
Target
{
private
Adaptee adapteet=
null
;
public
void
Request()
{
adapteet.SpecificRequest();
}
}
|
(2)类适配器
public
interface
Target
{
public
void
Request();
}
public
class
Adaptee
{
public
void
SpecificRequest()
{
System.out.println(
"这是原始标准接口!"
);
}
}
public
class
Adapter
extends
Adaptee
implements
Target
{
public
void
Request()
{
super
.SpecificRequest();
}
}
|
4.应用场景
在以下各种情况下使用适配器模式:
1.系统需要使用现有的类,而此类的接口不符合系统的需要。
2.想要建立一个可以重复使用的类,用于与一些彼此之间没有太大关联的一些类,包括一些可能在将来引进的类一起工作。这些源类不一定有很复杂的接口。
3.(对对象适配器而言)在设计里,需要改变多个已有子类的接口,如果使用类的适配器模式,就要针对每一个子类做一个适配器,而这不太实际。