
设计模式
zhuhao717
这个作者很懒,什么都没留下…
展开
-
设计模式——概述
设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的;设计模式使代码编制真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。——百度百科 设计模式分为三大类型,共23种。 创建型模式:单例模式、抽象工厂模式、原创 2015-03-30 20:38:14 · 457 阅读 · 0 评论 -
设计模式——适配器模式
一、适配器模式概述 将一个接口转换成客户希望的另外一个接口。(该模式使得原本不兼容的类可以一起工作) 适配器模式是一种结构型模式。二、适配器模式代码示例 以插座为例,需将双孔充电器用三孔插座充电,需要一个双孔转三孔的适配器 先定义一个双孔充电器package com.tyyd;/** * 2015年4月13日下午4:42:21 * @version 1.0 */public inte原创 2015-04-13 17:17:39 · 368 阅读 · 0 评论 -
设计模式——单例模式
一、单例模式概述 单例模式是一种常用的软件设计模式。在它的核心结构中只包含一个被称为单例类的特殊类。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。 单例模式分为两种模式:懒汉模式和饿汉模式二、单例模式代码示例 我们以每个人(系统)都只有一个老婆(实例)为例 1)饿原创 2015-04-01 17:25:15 · 408 阅读 · 0 评论 -
设计模式——模板方法模式
一、模板方法模式概述 模板方法模式是类的行为模式。准备一个抽象类,将部分逻辑以具体方法以及具体构造函数的形式实现,然后声明一些抽象方法来迫使子类实现剩余的逻辑。不同的子类可以以不同的方式实现这些抽象方法,从而对剩余的逻辑有不同的实现。这就是模板方法模式的用意。二、模板方法代码示例 我们以NBA球员打篮球为例,先定义一个抽象模板package com.tyyd;public abstract cl原创 2015-04-08 19:31:16 · 408 阅读 · 0 评论 -
设计模式——代理模式
一、代理模式概述 为其他对象提供一种代理以控制对这个对象的访问。 代理模式是一种结构型模式。二、代理模式代码示例 以汽车为例,先定义一个汽车行驶接口public interface Moveable { public void move();}定义一个汽车类实现这个接口public class Bus implements Moveable{ @Override pu原创 2015-04-27 16:27:51 · 370 阅读 · 0 评论 -
设计模式——门面模式
一、门面模式概述 门面模式是对象的结构模式,外部与一个子系统的通信必须通过一个统一的门面对象进行。门面模式提供一个高层次的接口,使得子系统更易于使用。 1) 门面角色( facade ):这是门面模式的核心。它被客户角色调用,因此它熟悉子系统的功能。它内部根据客户角色已有的需求预定了几种功能组合。 2) 子系统角色:实现了子系统的功能。对它而言, façade 角色就和客户角色一样是未知的,它原创 2015-05-07 15:17:27 · 418 阅读 · 0 评论 -
设计模式——策略模式
一、策略模式概述 策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。策略模式让算法独立于使用它的客户而独立变化。策略模式的结构 封装类:也叫上下文,对策略进行二次封装,目的是避免高层模块对策略的直接调用。 抽象策略:通常情况下为一个接口,当各个实现类中存在着重复的逻辑时,则使用抽象类来封装这部分公共的代码,此时,策略模式看上去更像是模版原创 2015-06-16 15:24:34 · 393 阅读 · 0 评论 -
设计模式——工厂方法模式
一、工厂方法模式概述 定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。工厂方法模式的结构 工厂接口:工厂接口是工厂方法模式的核心,与调用者直接交互用来提供产品。在实际编程中,有时候也会使用一个抽象类来作为与调用者交互的接口,其本质上是一样的。 工厂实现:在编程中,工厂实现决定如何实例化产品,是实现扩展的途径,需要有多少种产品,就需要有多少个具体的工厂原创 2015-07-02 15:31:55 · 462 阅读 · 0 评论