设计模式
pofengliuming
这个作者很懒,什么都没留下…
展开
-
装饰模式 Decorator
1.装饰模式装饰模式就是给一个对象增加一些新的功能,而且是动态的,要求装饰对象和被装饰对象实现同一个接口,装饰对象持有被装饰对象的实例.该模式中,要被扩展的类可以是包含抽象方法的抽象类,也可以是包含虚方法的实例类,也可以是普通实例类。装饰模式就是在原有基类上做扩展,至于基类是什么性质并不重要.装饰器模式的应用场景:1、需要扩展一个类的功能。2、动态的为一个对象增加功能,而且还能动态撤销。(原创 2016-08-23 12:05:55 · 312 阅读 · 0 评论 -
代理模式 Proxy
1.代理模式代理模式就是多一个代理类出来,替原对象进行一些操作,比如我们在租房子的时候回去找中介,为什么呢?因为你对该地区房屋的信息掌握的不够全面,希望找一个更熟悉的人去帮你做,此处的代理就是这个意思。再如我们有的时候打官司,我们需要请律师,因为律师在法律方面有专长,可以替我们进行操作,表达我们的想法。代理模式的应用场景:如果已有的方法在使用的时候需要对原有的方法进行改进,此时有两种办法:1、修改原原创 2016-08-23 23:10:40 · 317 阅读 · 0 评论 -
简单工厂 Simple Factory Pattern
1.简单工厂简单工厂模式(Simple Factory Pattern),又叫静态工厂方法模式(Static FactoryMethod Pattern),是通过专门定义一个类来负责创建其他类的实例,被创建的实例通常都具有共同的父类。简单工厂模式分离产品的创建者和消费者,有利于软件系统结构的优化;但是由于一切逻辑都集中在一个工厂类中,导致了没有很高的内聚性,同时也违背了“开放封闭原则”。另外,简单原创 2016-08-24 14:54:42 · 441 阅读 · 0 评论 -
工厂方法 Factory Method
1.工厂方法 定义一个用于创建对象的接口,让子类决定实例化哪一个类。 工厂方法使一个类的实例化延迟到其子类。 工厂方法把简单工厂的内部逻辑判断移到了客户端代码来进行。 你想要加功能,本来是改工厂类的,现在是修改客户端!2.结构图3.代码package com.hlf.designPatterns.FactoryMethod;/** * 学雷锋,做好事 * Crea原创 2016-08-24 19:36:43 · 292 阅读 · 0 评论