1 / 8
文档名称:

设计模式笔记.doc

格式:doc   大小:674KB   页数:8页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

设计模式笔记.doc

上传人:liangwei2005 2019/8/19 文件大小:674 KB

下载得到文件列表

设计模式笔记.doc

相关文档

文档介绍

文档介绍:设计模式(DesignPattern)的原则1、"开-闭"原则——模块应对扩展开放,而对修改关闭。(最最核心的原则)2、里氏代换原则——如果调用的是父类的话,那么换成子类也完全可以运行。里氏代换原则是继承复用的一个基础。子类overload方法的访问权限不能小于父类对应方法的访问权限3、合成复用原则——要少用继承,多用合成关系来实现。(合成包括:组合,聚合)4、依赖倒转原则——抽象不应该依赖与细节,细节应当依赖与抽象。要针对接口编程,而不是针对实现编程。传递参数,或者在组合聚合关系中,尽量引用层次高的类。5、接口隔离原则——每一个接口应该是一种角色,不多不少,不干不该干的事,该干的事都要干。(单一职责)6、抽象类——好的继承关系中,只有叶节点是具体类,其他节点应该都是抽象类,也就是说具体类是不被继承的。将尽可能多的共同代码放到抽象类中。7、迪米特法则——最少知识原则。不要和陌生人说话。 创建型设计模式简单工厂(静态工厂方法StaticFactoryMethod模式)简单工厂模式是由一个工厂对象来决定创造哪一种产品类的实例简单工厂模式最大的优点在于工厂类中包含了必要的逻辑判断。//产品接口---水果接口publicinterfaceFruit{ publicvoidplant();}//产品----lassAppleimplementsFruit{ publicvoidplant(){("plantapple!"); }}//产品----lassStrawberryimplementsFruit{ publicvoidplant(){("plantStrawberry!");}}//lassBadFruitExceptionextendsException{ publicBadFruitException(Stringmsg){super(msg);//调用父类的构造方法}}//工厂----lassFruitGardener{//静态工厂方法 publicstaticFruitfactory(Stringwhich)throwsBadFruitException{if(("apple")){returnnewApple();}elseif(("strawberry")){ returnnewStrawberry();}else{thrownewBadFruitException("Badfruitrequest");}}}//lassTestApp{ privatevoidtest(StringfruitName){try{ Fruitf=(fruitName); ("恭喜!生产了一个水果对象:"+fruitName);}catch(BadFruitExceptione){("工厂目前不能生产产品:"+fruitName);(());//输出异常信息}}publicstaticvoidmain(Stringargs[]){T