随笔分类 - 设计模式
摘要:单例模式:创建单个对象 工厂模式:创建对象交给工厂完成,当需要创建的对象是一系列相互关联或相互依赖的产品族时 原型模式:克隆对象,避免创建初始化开销 建造者模式:创建一个复杂对象,该对象有多个部分组成,Builder 组装这多个对象 代理对象:代替对真实对象访问,保护和隐藏目标对象 适配器模式:系统
阅读全文
摘要:模板方法模式 行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。 行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继
阅读全文
摘要:结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。 由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 目录 代理模式什么是代理模式?
阅读全文
摘要:创建者模式 单例模式饿汉式静态变量方式静态代码块方式 懒汉式线程不安全方式线程安全(synchronized)——效率低线程安全(双重检验锁)——效率高——概率报错空指针线程安全(双重检验锁、volatile)——效率高——反射破坏静态内部类方式——无加锁、效率高——序列化破坏枚举方式 存在问题静态
阅读全文
摘要:1.开闭原则 对扩展开放,对修改关闭 。在程序需要进行拓展的时候,不能去修改原有的代码想要达到这样的效果,我们需要使用接口和抽象类 。因为抽象灵活性好,适应性广,只要抽象的合理,可以基本保持软件架构的稳定。而软件中易变的细节可以从抽象派生来的实现类来进行扩展,当软件需要发生变化时,只需要根据需求
阅读全文