zoukankan      html  css  js  c++  java
  • 设计模式-门面模式

    门面模式:

    为子系统中的一组接口提供一个一致的接口,Facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

    应用场景:

    1.当您需要使用复杂子系统的有限但直接的接口时,请使用Facade模式。

    2.当您想要将子系统组织成层时,请使用Facade。

    /**
     * 门面模式
     */
    public class facadeTest {
        public static void main(String[] args) {
            new Client1().doSomething1();
            new Client2().doSomething1();
        }
    }
    
    class Client1 {
        Facade facade = new Facade();
    
        public void doSomething1(){
            facade.doSomethingFacade();
        }
    }
    
    class Client2 {
        Facade facade = new Facade();
    
        public void doSomething1(){
            facade.doSomethingFacade();
        }
    }
    
    class Facade {
        SubSystem1 subSystem1 = new SubSystem1();
        SubSystem2 subSystem2 = new SubSystem2();
        SubSystem3 subSystem3 = new SubSystem3();
    
        public void doSomethingFacade() {
            subSystem1.method1();
            subSystem2.method1();
            subSystem3.method1();
        }
    }
    
    class SubSystem1 {
        public void method1() {
            System.out.println("SubSystem1 excute");
        }
    }
    
    class SubSystem2 {
        public void method1() {
            System.out.println("SubSystem2 excute");
        }
    }
    
    class SubSystem3 {
        public void method1() {
            System.out.println("SubSystem3 excute");
        }
    }
  • 相关阅读:
    MonoRail学习-介绍篇(一)
    使用"_svn"替代".svn"的转换脚本
    Silverlight 4之ComboBox用法
    MD5 Algorithm
    子集算法的一个简单实现
    搜狗浏览器2.0正式版使用体验
    我做的抓屏软件
    WPF version of IPMessager
    Base64 Encode Decode Algorithm
    Origami Art
  • 原文地址:https://www.cnblogs.com/chenfx/p/14787667.html
Copyright © 2011-2022 走看看