[Design Pattern]:Adapter

博客给出了interface、class的代码示例,定义了Target接口、Adaptee类和Adapter类。通过Adapter类实现Target接口,可直接调用Adaptee的方法,还能补充新方法的实现代码,从而使用Adaptee的接口并扩展新接口。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

适配器又称包装器(Wrapper),它将一个接口转换成用户希望的另外一个接口,
使得原来由于接口不兼容而不能一起工作的那些类可以一起工作。
如果碰到两个没有关系的类组合在一起使用的问题,就应使用Adapter,
在这两种接口间创建一个混合接口。

interface Target
{
    void method1();//这是Adaptee有的方法
    void method2();//这是Adaptee没有的方法
}

class Adaptee
{
    public void method1(){}
}

public class Adapter implements Target
{
    private Adaptee adaptee;
    public Adapter(Adaptee adaptee){
        this.adaptee = adaptee;
    }
 
    //直接调用Adaptee的方法,没有必要重新写method1()的代码,这就是好处
    public void method1(){
        adaptee.method1();
    }
 
    public void method2(){
        //再此加入补充的方法的实现代码
    }
}

通过Adapter,我们就可以使用Adaptee的接口,同时又可以扩展新的接口。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值