设计模式之:适配器模式

业务场景

手上有新老俩接口和一个老接口的实现类

但是现在系统中要面向新接口来开发,老接口的实现类就不能直接用了,不能直接面向老接口来开发

开发一个老接口到新接口的一个适配器

适配器是实现了新接口的,但是适配器中持有老接口实现类实例的引用

适配器的新接口方法的实现,全部基于老接口实现类的老方法来实现即可

对于调用方而言,只要使用适配器来开发即可,就可以通过面向新接口开发,底层使用老接口实现类


/**
 * 适配器模式
 */
public class AdapterPatterDemo {
    public static void main(String[] args) {
        NewInterface oldObject = new NewInterfaceAdapter(new OldInterfaceImpl());
        NewInterface newObject = new NewInterfaceImpl();
        oldObject.newExecute();
        newObject.newExecute();
    }
    //定义一个适配器类
    public static class NewInterfaceAdapter implements NewInterface {
        private OldInterface oldObject;

        public NewInterfaceAdapter(OldInterface oldObject) {
            this.oldObject = oldObject;
        }
        @Override
        public void newExecute() {
            oldObject.oldExecute();
        }
    }
    //老版本接口
    public interface OldInterface {
        void oldExecute();
    }
    //老版本接口的实现类
    public static class OldInterfaceImpl implements OldInterface {
        @Override
        public void oldExecute() {
            System.out.println("老版本接口实现的功能逻辑");
        }

    }
    //新版本接口
    public interface NewInterface {
        void newExecute();

    }
    // 新版本接口的实现类
    public static class NewInterfaceImpl implements NewInterface {
        @Override
        public void newExecute() {
            System.out.println("新版本接口实现的功能逻辑");
        }
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值