设计模式
十二遇见
所以我时常害怕,愿中国青年都摆脱冷气,只是向上走,不必听自暴自弃者流的话。能做事的做事,能发声的发声。有一分热,发一分光,就令萤火一般,也可以在黑暗里发一点光,不必等候炬火。此后如竟没有炬火:我便是唯一的光。倘若有了炬火,出了太阳,我们自然心悦诚服的消失。不但毫无不平,而且还要随喜赞美这炬火或太阳;因为他照了人类,连我都在内。我又愿中国青年都只是向上走,不必理会这冷笑和暗箭。纵令不过一洼浅水,也可以学学大海;横坚都是水,可以相通。几粒石子,任他们暗地里掷来;几滴秽水,任他们从背后泼来就是了这还算不到“大侮蔑”——因为大侮蔑也须有胆力。
展开
-
设计模式之工厂模式
一、简单工厂模式 1.简单抽象工厂模式,又称作静态工厂方法模式,由工厂(使用switch)决定创建具体产品,不符合开放关闭原则。2.简单工厂模式UML图 3.简单工厂模式示例package cn.sy.edu.factory.simplefactory;/** * 封装一个OPeration类,包含numberA、numberB两个参数 * 然后加减乘除不同运算方式类继承此类,并用不同行为覆原创 2017-04-01 10:57:01 · 216 阅读 · 0 评论 -
设计模式之享元模式
一、享元模式 1.享元模式定义:为了避免大量拥有相同内容的小类重复创建,而使大家共享一个类的模式。Flyweight享元设计模式实质是运用一个简单工厂方法模式,外加一个单类模式实现细粒度原件的共享。2.享元模式的UML 3.享元模式示例class Book{ private String title; private float price; private原创 2017-04-13 16:00:30 · 249 阅读 · 0 评论 -
设计模式之外观模式
一、外观模式 1.外观模式定义:为子系统的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这个字系统更加容易使用。2.外观模式UML 3.外观模式示例class SubSystemOne{ public void methodOne(){ System.out.println("子系统方法一"); } }class SubSystemTwo{原创 2017-04-13 15:51:26 · 278 阅读 · 0 评论 -
设计模式之装饰模式
一、装饰模式 1.装饰模式定义:动态的给一个对象添加一些额外的职责,就增加功能来说,装饰模式比生成子类更加灵活。2.装饰模式的UML 3.装饰模式的示例/** * 装饰模式是为已有功能动态的添加更多功能的一种方式 * 它把每个要装饰的功能放在单独的类中,并让这个类包装它所要装饰的对象,因此,当需要执行特殊行为时, * 客户端代码可以在运行时根据需要有选择的和按顺序的使用装饰功能包装对象。原创 2017-04-13 15:47:03 · 196 阅读 · 0 评论 -
设计模式之组合模式
一、结构性设计模式-组合模式 1.组合模式定义:将对象组合成树形结构以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。2.组合模式的UML 3.组合模式示例import java.util.ArrayList; import java.util.List;/** * 组合中的对象声明接口,所有实现类的共有接口的默认行为 * @author shier *原创 2017-04-03 17:50:52 · 245 阅读 · 0 评论 -
设计模式之桥接模式
一、结构性设计模式-桥接模式 1.桥接模式定义:将抽象部分与它的实现部分分离,使他们都可以独立的变化,实现系统可能有多角度分类,每一种分类都有可能变化,那么就把这种多角度分离出来让它们独立变化,减少它们之间的耦合。2.桥接模式的UML 3.桥接模式的示例/** * 手机品牌抽象类 * @author shier * */ public abstract class HandsetBran原创 2017-04-03 17:11:16 · 218 阅读 · 0 评论 -
设计模式之适配器模式
一、结构性设计模式-适配器设计模式 1.适配器设计模式的定义:将一个类的接口转换成客户希望的另一个接口,使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。java中目前支持对象适配器模式,并且只有在双方都不太容易修改的时候在使用适配器模式适配。2.适配器设计模式UML 对象适配器:3.适配器模式示例/** * 客户所希望的类 * @author shier * */ public原创 2017-04-03 16:48:20 · 217 阅读 · 0 评论 -
设计模式之原型模式
一、原型模式 1.原型模式定义:用原型实例指向创建对象的种类,并且通过拷贝这些原型创建新的实例。原型对象就是通过一个对象再创建另一个可定制的对象,而不需要知道任何创建的细节。而建造者模式是知道最终创建产品,然后通过不同的实现方式去创建这个最终产品,同样也不需要中间的任何创建细节。2.原型模式的UML 3.原型模式示例/** * 工作经历类 * @author shier * */ cla原创 2017-04-03 16:27:49 · 318 阅读 · 0 评论 -
设计模式之单例模式
一、单例模式 1.单例模式定义:保证一个类仅有一个实例,并提供一个访问它的全局访问点,该类不可子类化。2.单例模式的UML 3.单例模式的示例import java.io.ObjectStreamException; import java.io.Serializable;/** * * 饱汉式单例模式 * @author shier * */ @SuppressWarnings("原创 2017-04-02 12:24:01 · 351 阅读 · 0 评论 -
设计模式之建造者模式
一、建造者模式 1.建造者模式定义:讲一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。2.建造者模式UML 3.建造者模式示例import java.util.ArrayList; import java.util.List;/** * 产品类 * @author shier * */ class Product{ List<String> parts原创 2017-04-02 10:59:56 · 421 阅读 · 0 评论 -
设计模式之代理模式
一、代理模式 1.代理模式定义:为其他对象提供一种代理以控制对这个对象的访问。2.代理模式UML 3.代理模式的示例interface ProxyBase{ public void f(); public void g(); public void h(); } //代理程序 class Proxy implements ProxyBase{原创 2017-04-13 16:13:43 · 330 阅读 · 0 评论