zoukankan      html  css  js  c++  java
  • 外观模式

    1、简介

    外观模式(Facaed Pattern),隐藏系统的复杂性,并向客户端提供一个可访问的接口。


    核心代码:在客户端和复杂系统之间加上一层,在这一层将调用顺序、依赖关系处理好。

    优点:

    1. 减少了系统相互依赖
    2. 提高了系统灵活性
    3. 提高了安全性

    缺点:
    不符合开闭原则,改东西很麻烦,继承重写都不合适。

    一个现实生活中的例子就是,病人去医院看病,可能需要挂号、抓药、输液等环节,这时如果有一个接待员,来处理这些事情,就很方便了。

    2、使用

    // 形状接口
    public interface Shape {
    	
    	void draw();
    }
    // 形状实现
    public class Circlo implements Shape{
    	
    	@Override
    	public void draw() {
    		System.out.println("Shape Circlo drawing");
    	}
    }
    public class Sequre implements Shape{
    
    	@Override
    	public void draw() {
    		System.out.println("Shape Square drawing");
    	}
    }
    
    // 外观类
    public class ShapeMarket {
    	
    	private Shape criclo;
    	private Shape square;
    	
    	public ShapeMarket() {
    		this.criclo = new Circlo();
    		this.square = new Sequre();
    	}
    	
    	public void drawCriclo() {
    		criclo.draw();
    	}
    	
    	public void drawSequare() {
    		square.draw();
    	}
    }
    
    // Test
    ShapeMarket shapeMarket = new ShapeMarket();
    shapeMarket.drawCriclo();
    shapeMarket.drawSequare();
    
  • 相关阅读:
    Spring包的依赖关系以及提供下载
    正则
    Spring征服数据库
    Java之多线程同步基础
    Java之多线程优先级基础
    ColorMatrixFilter色彩矩阵滤镜
    AS3.0 位图翻转、旋转
    AS3.0 自定义右键菜单类
    精确选择识别png图片有像素的区域
    AS3动画效果常用公式
  • 原文地址:https://www.cnblogs.com/kungFuPander/p/13474594.html
Copyright © 2011-2022 走看看