zoukankan      html  css  js  c++  java
  • 适配器模式 (学习笔记8)

    原文地址:http://c.biancheng.net/view/1361.html

    什么时候用:

    1. 当前接口不满足第三方系统需求,这种不满足不是根本上的不满足,往往是形式上的,只要加以转换就可以。

    适配器模式(Adapter)包含以下主要角色:

    1. 目标(Target)接口:当前系统业务所期待的接口,它可以是抽象类或接口。
    2. 适配者(Adaptee)类:它是被访问和适配的现存组件库中的组件接口。
    3. 适配器(Adapter)类:它是一个转换器,通过继承或引用适配者的对象,把适配者接口转换成目标接口,让客户按目标接口的格式访问适配者。

    结构图1:

    image

    结构图2:

    image

    示例代码1:

    package adapter;
    //目标接口
    interface Target
    {
        public void request();
    }
    //适配者接口
    class Adaptee
    {
        public void specificRequest()
        {       
            System.out.println("适配者中的业务代码被调用!");
        }
    }
    //类适配器类
    class ClassAdapter extends Adaptee implements Target
    {
        public void request()
        {
            specificRequest();
        }
    }
    //客户端代码
    public class ClassAdapterTest
    {
        public static void main(String[] args)
        {
            System.out.println("类适配器模式测试:");
            Target target = new ClassAdapter();
            target.request();
        }
    }

    示例代码2:

    package adapter;
    //对象适配器类
    class ObjectAdapter implements Target
    {
        private Adaptee adaptee;
        public ObjectAdapter(Adaptee adaptee)
        {
            this.adaptee=adaptee;
        }
        public void request()
        {
            adaptee.specificRequest();
        }
    }
    //客户端代码
    public class ObjectAdapterTest
    {
        public static void main(String[] args)
        {
            System.out.println("对象适配器模式测试:");
            Adaptee adaptee = new Adaptee();
            Target target = new ObjectAdapter(adaptee);
            target.request();
        }
    }
  • 相关阅读:
    【成本管理】成本核算
    CW23:Work Log
    SQLSERVER数据库连接
    Oracle 创建用户 修改用户密码 授权命令
    CW24:WORK LOG
    ORA12560: TNS: 协议适配器错误的解决方法
    需求工程概述
    日语学习1:送气音和不送气音
    junit测试框架简单应用
    Java之Socket编程
  • 原文地址:https://www.cnblogs.com/huiy/p/15559568.html
Copyright © 2011-2022 走看看