zoukankan      html  css  js  c++  java
  • 设计模式开始--桥接模式

    桥接模式

    一、作用:

    对于一类事物的集合,A1 A2 A3 ... An 每一个事物都有功能 F1 F2 F3 .... Fn 为了描述这种关系,需要m*n个类进行处理,类太多了,如何减少类的数量,此时用的就是桥接模式,桥接模式思想就是把功能进行抽象,提取,形成单独的体系,而不是依赖于原有的事物A 还是之前的原则将变化的进行了抽象,抽象成了单独的体系和接口

    二、类图:

    三、类实现

    (1)AbstractThing 定义事物抽象类

    public abstract class AbstractThing {
        private IPost post;
        public AbstractThing(IPost post)
        {
            this.post = post;
        }
        public void post()
        {
            post.post();
        }
    }
    View Code

    (2)定义抽象事物实现类

    public class Letter extends AbstractThing {
        public Letter(IPost post)
        {
            super(post);
        }
    }
    View Code

    (3)定义功能抽象接口

    public interface IPost {
        public void post();
    }
    View Code

    (4)功能实现类

    public class MarkPost implements IPost {
        @Override
        public void post() {
            System.out.println("This is a simply post");
        }
    }
    public class SimplePost implements IPost {
        @Override
        public void post() {
            System.out.println("This is a mark post");
        }
    }
    View Code

    (5)测试类Client

    public class Client {
        public static void main(String[] args) {
            IPost post = new SimplePost();
            AbstractThing at = new Letter(post);
            at.post();
        }
    }
    View Code
  • 相关阅读:
    IE 创建条件样式
    Weinre
    three.js 之 透明物体不能正常显示
    用shader实现流动的水面(webgl)
    用js的方式运行c程序之webassemly
    three.js效果之热力图和轨迹线
    three.js后期之自定义shader通道实现扫光效果
    《计算机网络》物理层
    《计算机网络》概述
    pixi小游戏开发(vue+typescript)
  • 原文地址:https://www.cnblogs.com/sunshisonghit/p/4384385.html
Copyright © 2011-2022 走看看