摘要:
意图:用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。 该模式的思想就是将一个对象作为原型,对其进行复制、克隆,产生一个和原对象类似的新对象。 浅复制:将一个对象复制后,基本数据类型的变量都会重新创建,而引用类型,指向的还是原对象所指向的。 深复制:将一个对象复制后,不论是... 阅读全文
摘要:
意图 将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。 工厂类模式提供的是创建单个类的模式,而建造者模式则是将各种产品集中起来进行管理,用来创建复合对象,所谓复合对象就是指某个类具有不同的属性. 建造者模式将很多功能集成到一个类里,这个类可以创造出比较复杂的东西。使用... 阅读全文
摘要:
意图 提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。 工厂方法模式有一个问题就是,类的创建依赖工厂类,也就是说,如果想要拓展程序,必须对工厂类进行修改,这违背了闭包原则使用上一节工厂模式里的接口Sender,类MailSender 、SmsSender提供一个工厂接口:1 ... 阅读全文
摘要:
意图: 定义一个用于创建对象的接口,让子类决定实例化哪一个类。Factory Method 使一个类的实例化延迟到其子类。适用性 当一个类不知道它所必须创建的对象的类的时候。 当一个类希望由它的子类来指定它所创建的对象的时候。 当类将创建对象的职责委托给多个帮助子类中的某一个,并且你希望将哪... 阅读全文
摘要:
Singleton模式意图: 保证一个类仅有一个实例,并提供一个访问它的全局访问点。适用性: 当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。 当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。优点: 对唯一实例的受控访问 因为Sing... 阅读全文