随笔分类 -  设计模式

设计模式的理解和资料
摘要:建造者模式的主要特征是,通过一步一步的方式生成一些东西。每个生成的东西,即使其中的任何一步都不相同,但也将遵循同样的过程。4个角色:指挥者(Director),建造者(Builder),具体建造者(ConcreteBuilder),产品(Product)产品:需要创建的对象产品建造者:本质为抽象类,里面的抽象方法供具体建造者重写,声明产品的引用具体建造者:创建产品的实例并且实现建造者多个方法对产品进行装配指挥者:调用建造者抽象类以及其方法代码:// produce to be builtclass Starbucks {private String size;private String dr 阅读全文

posted @ 2013-12-15 20:56 极冰 阅读(375) 评论(0) 推荐(0) |

摘要:Singleton模式要求一个类有且仅有一个实例,并且提供了一个全局的访问点。这就提出了一个问题:如何绕过常规的构造器,提供一种机制来保证一个类只有一个实例?客户程序在调用某一个类时,它是不会考虑这个类是否只能有一个实例等问题的,所以,这应该是类设计者的责任,而不是类使用者的责任。从另一个角度来说,Singleton模式其实也是一种职责型模式。因为我们创建了一个对象,这个对象扮演了独一无二的角色,在这个单独的对象实例中,它集中了它所属类的所有权力,同时它也肩负了行使这种权力的职责!一、经典模式:public class Singleton{private static Singleton in 阅读全文

posted @ 2013-12-15 20:51 极冰 阅读(165) 评论(0) 推荐(0) |

摘要:原型设计模式用在当需要经常使用非常相似的对象的情况下,当需要相似的对象时,原型模式会克隆原始对象并且只修改不同的地方,这样会消耗更少的资源。代码: 1 abstract class ColorPrototype 2 { 3 4 public abstract ColorPrototype Clone(); 5 } 6 class ConcteteColorPrototype : ColorPrototype 7 { 8 9 private int _red, _green, _blue;10 11 public ConcteteColorPrototype(int red, int gre.. 阅读全文

posted @ 2013-12-15 20:47 极冰 阅读(314) 评论(0) 推荐(0) |

摘要:抽象工厂模式在工厂模式的基础上又增加了一层抽象。将抽象工厂模式与工厂模式比较,很明显是添加了一个新的抽象层。抽象工厂是一个创建其他工厂的超级工厂。我们可以把它叫做“工厂的工厂”。代码:interface CPU {void process();}interface CPUFactory {CPU produceCPU();}class AMDFactoryimplements CPUFactory {public CPU produceCPU() {return new AMDCPU();}}class IntelFactoryimplements CPUFactory {public CPU 阅读全文

posted @ 2013-12-15 20:32 极冰 阅读(182) 评论(0) 推荐(0) |

摘要:工厂模式用来根据不同的参数创建对象。下面的例子是用工厂创造人类。如果我们问工厂要一个男孩,则工厂会产生一个男孩,如果我们问工厂要一个女孩,工厂将产生一个女孩。根据不同的参数,工厂会生产不同的东西。工厂模式的代码:interface Human {public void Talk();public void Walk();}class Boyimplements Human{@Overridepublic void Talk() {System.out.println("Boy is talking...");}@Overridepublic void Walk() {Sys 阅读全文

posted @ 2013-12-15 20:13 极冰 阅读(208) 评论(0) 推荐(0) |

博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3