摘要:单例模式的意图是为了保持有且只有一个实体,并且提供一个全局的访问点。 为什么要使用单例模式 如果某个类在整个程序运行过程中只能有一个实例,比如创建多个实例会造成不必要的系统开销,或者会造成程序状态的不易管理和维护等等。 单例模式概述 单例模式既然定义类只能有一个实例,那么就必须将类的构造函数私有化,通过使用类方法的方法获取该类的唯一实例。下面是伪代码(这里不讨论线程安全问题):class ...
阅读全文
06 2012 档案
摘要:原型模式用于复制对象,抽象产品类定义复制自身的方法,实体产品类继承抽象产品类并实际实现复制方法,在客户使用时直接调用该复制方法即可。 为什么要使用这个模式 当有产品经常需要进行复制,而且该产品的复制方法比较复杂而且很可能非常多变,更加可能的是客户需要使用许多种该类产品,这种情况下就非常适合用原型模式。 原型模式概述 原型模式核心包括2个角色: 1. 抽象产品类IC(接口IA),该类定义了复...
阅读全文
摘要:工厂方法模式用来定义一个创建产品的接口(抽象类),具体的产品创建工作由子类来实现,它是一种类的创建模式。模式介绍工厂方法模式分为4个角色:1. 抽象工厂Creator,该角色定义了工厂类所必须具备的所有接口,在本模式中通常只有一个Creator角色类2. 具体工厂ConcreteCreator,实际的工厂类,实现Creator中定义的接口并实际生成产品,应用将直接调用该角色以生成产品3. 抽象产品角色Product,该角色定义了产品类所必须具备的接口4. 具体产品角色ConcreteProduct,该角色实现了Product中定义的接口,它是应用所需要的真正的产品上述角色中,一般具体工厂角色和
阅读全文
摘要:简单工厂模式也可以成为静态工厂模式,它的目的是根据提供给它的数据,返回可能的许多个具有相同基类的类中的某个类的实例,方法签名返回的是基类的实例。为什么要使用这个模式 当需要使用统一的接口来根据不同的输入返回相同基类的不同类的实例时,使用静态工厂。静态工厂模式是抽象工厂的一个简单应用,抽象工厂模式定义抽象类或接口来抽象接口方法,而简单工厂则使用一个方法来实现根据参数返回相应应用类。 通俗的来说,简单工厂模式就是一堆if语句的整合物,比如有类B、C、D都继承A,经常需要根据某个参数来获取BCD的实例,如果不用模式,那么就是如下代码 A a; if(...) a = new B(); else if
阅读全文

浙公网安备 33010602011771号