详解23种设计模式(基于Java语言) 单例模式工厂方法/抽象工厂模式工厂方法/抽象工厂模式原型模式建造者模式适配器模式桥接模式装饰者模式组合模式外观模式享元模式代理模式模板方法模式命令模式访问者模式迭代器模式观察者模式中介者模式备忘录模式解释器模式状态模式策略模式职责链模式