怀揣梦想,努力前行

Never forget to improve yourself.

桥接模式(Bridge Pattern)

桥接模式定义:将抽象部分与它的实现部分分离,使它们都可以独立地变化 看下图手机与手机软件的类图 增加一款新的手机软件,需要在所有手机品牌类下添加对应的手机软件类,当手机软件种类较多时,将导致类的个数急剧膨胀,难以维护 手机和手机中的软件是什么关系? 手机中的软件从本质上来说并不是一种手...

2018-07-22 11:02:29

阅读数 1058

评论数 0

备忘录模式(Memento Pattern)

备忘录模式定义:在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态...

2018-07-01 19:12:02

阅读数 74

评论数 0

建造者模式(Builder Pattern)

建造者模式定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示这个模式和模板方法模式特别相似,下面是模板方法模式的示例:public abstract class Beverage { public abstract void addIngredient(); ...

2018-06-02 17:27:41

阅读数 191

评论数 0

原型模式(Prototype Pattern)

我们来看下下面的代码public class Brand { private String name; private int age; public Brand(String name, int age){ this.name = name; ...

2018-05-30 17:21:01

阅读数 93

评论数 0

策略模式(Strategy Pattern)

策略模式定义:策略模式定义了算法族,将算法分别封装起来,让他们之间可以互相替换。此模式让算法的变化独立于使用算法的客户我们来看一个商场打折的例子public interface Discount { public double reduce(double total); } public...

2018-04-07 10:13:49

阅读数 1414

评论数 1

JDK中的设计模式

转自:  结构型模式: 适配器模式: 用来把一个接口转化成另一个接口。 java.util.Arrays#asList()javax.swing.JTable(TableModel)java.io.InputStreamReader(InputStream)java.io.Output...

2014-07-20 21:24:54

阅读数 833

评论数 0

代理模式(Proxy Pattern)

代理模式:为另一个对象提供一个替身或占位符以控制对这个对象的访问 代理模式有很多变体,例如: 远程代理:控制访问远程对象(java RMI) 虚拟代理:控制访问创建开销大的对象 保护代理:基于权限控制对对象的访问 代理模式的类图如下: 代理和实际对象继承自同一个接口,故代理可以在实际对象出现的地...

2013-08-28 16:55:03

阅读数 1052

评论数 0

状态模式(State Pattern)

状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类

2013-07-29 17:25:58

阅读数 1002

评论数 0

组合模式(Composite Pattern)

组合模式定义:

2013-07-22 11:41:52

阅读数 1001

评论数 0

迭代器模式(Iterator Pattern)

1

2013-07-16 11:08:03

阅读数 1311

评论数 0

模板方法模式(Template Method Pattern)

模板方法模式定义:在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以在不改变算法结构的条件下,重新定义算法中的某些步骤 例如:准备一杯咖啡或准备一杯柠檬茶有很多相似之处 准备咖啡:烧水- 泡咖啡 - 装杯 - 加糖 准备柠檬茶:烧水- 泡茶 - 装杯 - 加柠檬 p...

2013-06-28 15:17:39

阅读数 1228

评论数 0

设计模式分类

1.创建型:对象的创建。 工厂方法模式(FactoryMethod) 抽象工厂模式(AbstractFactory) 创建者模式(Builder) 原型模式(Prototype) 单例模式(Singleton) 2. 结构型:处理类或对象之间的组合。 外观模式(Facade) 适配器模式(Adap...

2013-06-27 11:51:51

阅读数 695

评论数 0

外观模式(Facade Pattern)

外观模式定义:外观模式提供了一个统一的接口,用来访问子系统中的一群接口。外观定义了一个高层接口,让子系统更容易使用。 这个模式比较简单,一个普通出门流程:洗脸 - 刷牙 - 穿衣 - 背包 public class Face { public void wash(){ System.o...

2013-06-08 13:09:41

阅读数 874

评论数 0

适配器模式(Adapter Pattern)

适配器模式定义:Adapter Pattern将一个类的接口,转换成客户期望的另一个接口,Adapter Pattern让原本接口不兼容的2个类可以合作无间。

2013-06-08 10:19:46

阅读数 947

评论数 0

命令模式(Command Pattern)

命令模式定义:命令模式将“请求”封装成对象,以便使用不同的请求、队列或者日志来参数化其它对象。命令模式也支持可撤销操作。 这个模式貌似和Observer Pattern很像,实际上区别不小: 1,Observer Pattern是我有新数据,我给你新数据或者你来取新数据,是数据的传递;Comm...

2013-06-07 11:34:10

阅读数 1143

评论数 0

单例模式(Singleton Pattern)

单例模式定义:单例模式确保一个类只有一个实例,并提供一个全局访问点 public class Singleton { public static Singleton instance; private Singleton(){} public static Singleton get...

2013-06-03 13:48:25

阅读数 997

评论数 0

抽象工厂模式(Abstract Factory Pattern)

抽象工厂模式定义:抽象工厂模式提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类 其实和策略模式还是蛮像的,只不过现在抽象分离出去的不是一个普通类,而是一个工厂类,并且工厂类依赖于多个抽象类(比如:酱料和火腿) public class Store { private Abs...

2013-06-03 09:24:19

阅读数 1012

评论数 0

工厂方法模式(Factory Method Pattern)

工厂方法模式定义:工厂方法模式定义了一个创建方法的接口,但由子类决定要初始化的类是哪一个,工厂方法让类把实例化推迟到子类。 两家PizzaStore,NYPizzaStore提供纽约风味的pizza,CHPizzaStore提供芝加哥风味的pizza: public abstract class...

2013-05-30 18:40:18

阅读数 1011

评论数 0

简单工厂(Simple Factory)

简单工厂并不算23种基本设计模式,只是对程序功能的简单封装、解耦参考如下代码:public interface Employee { public void doJob(); } public class Tester implements Employee { public vo...

2013-05-30 14:50:58

阅读数 931

评论数 0

JDK中的装饰模式:Java I/O

Java I/O使用装饰模式设计,JDK中还有很多类是使用装饰模式设计的,如:Reader类、Writer类、OutputStream类等,如果使用这种结构,那么在基础方法上添加新的功能将十分简单

2013-05-29 20:26:42

阅读数 3405

评论数 0

提示
确定要删除当前文章?
取消 删除
关闭
关闭