摘要: 装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。 这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。 意图:动态地给一个对象添加一些额外的 阅读全文
posted @ 2018-02-20 16:48 大象踢足球 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 在代理模式(Proxy Pattern)中,一个类代表另一个类的功能。这种类型的设计模式属于结构型模式。 意图:为其他对象提供一种代理以控制对这个对象的访问。 主要解决:在直接访问对象时带来的问题,比如说:要访问的对象在远程的机器上。在面向对象系统中,有些对象由于某些原因(比如对象创建开销很大,或者 阅读全文
posted @ 2018-02-20 15:52 大象踢足球 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 适配器模式(Adapter Pattern)是作为两个不兼容的接口之间的桥梁。这种类型的设计模式属于结构型模式,它结合了两个独立接口的功能。 这种模式涉及到一个单一的类,该类负责加入独立的或不兼容的接口功能。举个真实的例子,读卡器是作为内存卡和笔记本之间的适配器。您将内存卡插入读卡器,再将读卡器插入 阅读全文
posted @ 2018-02-20 15:44 大象踢足球 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 当对象间存在一对多关系时,则使用观察者模式(Observer Pattern)。比如,当一个对象被修改时,则会自动通知它的依赖对象。 意图:定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。 主要解决:一个对象状态改变给其他对象通知的问题,而且要 阅读全文
posted @ 2018-02-20 15:32 大象踢足球 阅读(163) 评论(0) 推荐(0) 编辑
摘要: 建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。 意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表示。 主要解决:主要解决在软件系统中,有时候面临着"一个复杂对象"的创建工作,其通常由各个部分的子对象用一定的算法构成;由于需求的变化 阅读全文
posted @ 2018-02-20 15:07 大象踢足球 阅读(144) 评论(0) 推荐(0) 编辑
摘要: 在工厂模式中,我们在创建对象时不会对客户端暴露创建逻辑,并且是通过使用一个共同的接口来指向新创建的对象。 意图:定义一个创建对象的接口,让其子类自己决定实例化哪一个工厂类,工厂模式使其创建过程延迟到子类进行。 主要解决:主要解决接口选择的问题。 何时使用:我们明确地计划不同条件下创建不同实例时。 如 阅读全文
posted @ 2018-02-20 13:00 大象踢足球 阅读(167) 评论(0) 推荐(0) 编辑
摘要: 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。 注意: 单例类只能有一个实例。 单例类必须自己创建自己的 阅读全文
posted @ 2018-02-20 11:31 大象踢足球 阅读(140) 评论(0) 推荐(0) 编辑