设计模式-适配器模式
大家都这么说适配器模式是这样的:
适配器模式把一个类的接口变换成客户端所期待的另一种接口,从而使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。
个人简单理解:
比如说,你想要一个三相的插头, 而你现在只有一个两相的插头,那怎么办呢?
因此,我们需要一个东西,把这个两项插头变成三相插头,这样我们就可以用了。这个东西可以称之为适配器。
即适配器扩展了两相插头的功能, 使他能当成三相插头来用。
适配器模式有两种实现方式:类适配器和对象适配器。
类适配器
//三相插头
public interface TriphaseSocket
{
void function1();
void function2();
}
//两相插头
public class TwoPhaseSocket
{
public void function1();
}
//Adapter
public class Adapter extends TwoPhaseSocket implements TriphaseSocket
{
//这个适配器,相当于可以做三相插头的事
@override
public void function2()
{
}
}
对象模式
//三相插头
public interface TriphaseSocket
{
void function1();
void function2();
}
//两相插头
public class TwoPhaseSocket
{
public void function1();
}
public class Adapter
{
private TwoPhaseSocket twoPhaseSocket; //我有一个两相插头
public Adapter(TwoPhaseSocket twoPhaseSocket)
{
this.twoPhaseSocket = twoPhaseSocket;
}
public void function1()
{
this.twoPhaseSocket.function1();
}
public void function2()
{
//这件事我会做
}
}
类适配器采用继承, 对象适配器有点类似包装了。