类适配器
将现有的已经使用的类型转变成需要得到的类型
类图:
java实现
目标接口类型
public interface Target {
public void doSomething();
}
正常实现类
public class ConcreteTarget implements Target {
@Override
public void doSomething() {
}
}
需要转化的类
public class Adaptee {
public void exe(){
}
}
类适配器
这是类适配器,通过继承的方式实现,也可以通过组合的方式实现,这样叫做对象适配器
public class Adapter extends Adaptee implements Target{
@Override
public void doSomething() {
super.exe();
}
}
对象适配器
public class Adapter implements Target{
private Adaptee adaptee;
public Adapter(Adaptee adaptee){
this.adaptee = adaptee;
}
@Override
public void doSomething() {
adaptee.exe();
}
}
php实现
interface Target
{
public function doSomething();
}
class Adaptee
{
public function exe()
{
echo 'Adaptee';
}
}
class Adapter extends Adaptee implements Target
{
public function doSomething()
{
echo 'doSomething';
}
}