结构型设计模式是从程序的结构上解决模块之间的耦合问题。包括以下七种模式:

  • 适配器模式:可以将类的一个借口匹配另一个接口
  • 组合模式:对象的组合
  • 代理模式:一个简单的对象代替一个复杂的稍后会被调用的复杂对象
  • 外观模式:一个类表示一个子系统
  • 享元模式:用于共享对象,其中每个实例都不保存自己的状态。而是将状态保存在外部
  • 桥接模式:将对象的接口与实现分离
  • 装饰模式:动态给对象添加职责结构型设计模式是从程序的结构上解决模块之间的耦合问题

适配器模式:

含义:将一个类的接口转换成客户希望的另外一个接口。




组合模式:



含义:就是把部分和整体的关系用树形的结构来表示,从而使客户端能够把部分对象和组合起来的对象采用同样的方式来看待。




代理模式:



含义:通过引用代理对象来访问真实对象就是代理模式的设计动机。


//网络接口
interface Network{
    public void getNet();
}

//真实网络
class Real implements Network{
    @Override
    public void getNet() {
        System.out.println("获得网络,成功上网。");
    }
}

//代理网络
class Proxy implements Network{
    public Network network;

    public Proxy(Network network){
        this.network=network;
    }
    private void check(){
        System.out.println("用户名密码正确");
    }
    @Override
    public void getNet() {
        this.check();
        network.getNet();
    }
}

//实现代理上网
public class NetworkProxy {
    public static void main(String[] args) {
        Network network=new Proxy(new Real());
        network.getNet();
    }
}





桥接模式:



含义:Bridge模式基于类的最小设计原则,通过使用封装,聚合以及继承等行为来让不同的类承担不同的责任




外观模式


含义:外部与一个子系统的通信必须通过一个统一的门面(Facade)对象进行,这就是外观模式。







待续完善....