2013年8月1日
摘要: 前面提到抽象工厂的实现,这里说说抽象工厂的原型实现,与工厂方法的实现不同,原型实现有他自己的优点和缺点原型的优点:1. 效率:clone是native方法,比new的效率高,当使用复杂循环嵌套对象是尤为明显2. 不需要为每一个新增的product创造一个具体factory缺点:1. 如果需要深复制,则需要手写所有包含循环引用对象的类的clone方法,因为需要手动在clone方法里对引用对象进行clone,否则是浅复制2. 当需要改变一个克隆实例内部的值时,由于clone方法是无参方法,只能在clone完以后手动调用改变值得方法,且如果这个值是一个类的引用,则克隆应该建立在深复制的前提下,否则会 阅读全文
posted @ 2013-08-01 15:20 ZimZz 阅读(410) 评论(0) 推荐(0) 编辑
摘要: 在谈工厂之前,先阐述一个观点:那就是在实际程序设计中,为了设计灵活的多态代码,代码中尽量不使用new去实例化一个对象,那么不使用new去实例化对象,剩下可用的方法就可以选择使用工厂方法,原型复制等去实例化这个对象,好处就是客户端并不知道这个实例化的对象的实际实现,从而可以将这个对象随意替换成我们需要的不同实现工厂方法(Factory Method)概念:定义一个用于创建对象的接口,让子类决定实例化哪个类.它使一个类的实例化延迟到其子类结构图:抽象工厂(Abstract Factory)概念: 提供一个创建一系列相关或相互依赖对象的接口,而无需指定他们具体的类.结构图:单例模式(Singleto 阅读全文
posted @ 2013-08-01 15:11 ZimZz 阅读(711) 评论(0) 推荐(0) 编辑