For Exam (Java常用设计模式) 介绍
一 创建型模式
工厂模式(Factory): 定义一个用以创建对象的接口
抽象工厂模式(Abstract Factory): 提供一个创建一系列相关或相互依赖对象的接口
单例模式(Singleton): 保证一个类仅有一个实例,并提供一个访问它的全局控制点.
建造者模式(Builder): 将一个复杂对象的构建与它的表示分离.
二 结构型模式
适配器模式(Adapter): 将一个类的接口转换成客户希望的另一个接口.
合成模式(Composite): 合成模式将对象组合成树型结构以表示“部分---整体”的层次结构。
装饰者模式 Decorator : 动态的给一个对象添加一些额外的职责
代理模式 Proxy : 为其他对象提供一种代理以控制对这个对象的访问
外观模式(Facade): 为子系统中的一组接口提供一个一致的界面.
桥梁模式(Bridge): 桥梁模式将抽象部分与它的实现部分分离
三 行为型模式
中介者模式(Mediator): 中介者模式用一个中介对象封装一系列的对象交互.
策略模式 Strategy: 策略模式定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换
模板模式(Template): 定义一个操作中的算法骨架, 而将一些步骤延迟到子类中.
观察者模式(Observer): 定义了一种一对多的依赖关系,让多个观察者对象同时监听某一主题对象
迭代器模式(Iterator): 迭代器模式提供一种方法顺序访问一个聚合对象中各个元素
责任链模式(Chain of Responsibility): 责任链模式使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系
命令模式(Command): 将一个请求封装成为一个对象, 使可以用不同的请求对客户进行参数化.
状态模式(State): 状态模式容许一个对象在其内部状态改变时改变它的行为。
访问者模式(Visitor): 访问者模式表示一个作用于某对象结构中的各元素的操作。
For Exam (Java常用设计模式) 介绍的更多相关文章
- java常用设计模式总览
一.java的设计模式大体上分为三大类: 创建型模式(5种):工厂方法模式,抽象工厂模式,单例模式,建造者模式,原型模式. 结构型模式(7种):适配器模式,装饰器模式,代理模式,外观模式,桥接模式,组 ...
- java常用设计模式
一个程序员对设计模式的理解: "不懂"为什么要把很简单的东西搞得那么复杂. 后来随着软件开发经验的增加才开始明白我所看到的"复杂"恰恰就是设计模式的精髓所在,我 ...
- JAVA常用设计模式整理
设计模式:一个程序员对设计模式的理解:“不懂”为什么要把很简单的东西搞得那么复杂.后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把 ...
- JAVA常用设计模式(一、单例模式、工厂模式)
JAVA设计模式之单例模式 import java.util.HashMap; import java.util.Map; /** * 设计模式之单例模式 * 单例模式(Singleton Patte ...
- java 常用设计模式(转载)
http://www.cnblogs.com/hnrainll/archive/2011/12/29/2305582.html 设计模式:一个程序员对设计模式的理解:“不懂”为什么要把很简单的东西搞得 ...
- JAVA常用设计模式(静态化调用和实例化调用的区别,编辑可见 )
用newInstance()与用new是区别的,区别在于创建对象的方式不一样,前者是使用类加载机制,后者是创建一个新类,且newInstance()只能调用无参构造函数. 最大的区别在于内存.静态方法 ...
- Java常用设计模式《转》
设计模式:一个程序员对设计模式的理解:“不懂”为什么要把很简单的东西搞得那么复杂.后来随着软件开发经验的增加才开始明白我所看到的“复杂”恰恰就是设计模式的精髓所在,我所理解的“简单”就是一把钥匙开一把 ...
- GOF 的23种JAVA常用设计模式总结 02 UML中的类图与类图之间的关系
统一建模语言UML 统一建模语言(Unified Modeling Language,UML)是用来设计软件蓝图的可视化建模语言,1997 年被国际对象管理组织(OMG)采纳为面向对象的建模语言的国际 ...
- 《java常用设计模式之----单例模式》
一.简介 单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一.这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式. 这种模式涉及到一个单一的类,该类负责创 ...
随机推荐
- 4、BOM编程/正则表达式
1. BOM编程 1.1. BOM编程基础 全称 Browser Object Model,浏览器对象模型. JavaScript是由浏览器中内置的javascript脚本解释器程序来执行jav ...
- C++ 关键字 explicit, export, mutable
转自 explicit 如果A类有某个构造函数的单个输入参数,是B类(包括基本数据类型)的对象或引用,则C++的编译器会在需要A类形参的函数调用中,自动调用该构造函数,将B类实参隐式地转换为A类实参. ...
- MySQL数据类型总结
MySQL中的数据类型大的方面来分,可以分为:日期和时间.数值,以及字符串.下面就分开来进行总结. 日期和时间数据类型 MySQL数据类型 含义 date 3字节,日期,格式:2014-09-18 t ...
- Unity-Animato深入系列---FloatValue阻尼
回到 Animator深入系列总目录 Animator的SetFloat接口可以设置阻尼,并且4种类型变量只有float是支持阻尼的. public void SetFloat(int id, flo ...
- Java中数组的特性
转载:http://blog.csdn.net/zhangjg_blog/article/details/16116613 数组是基本上所有语言都会有的一种数据类型,它表示一组相同类型的数据的集合,具 ...
- Entity Framework 第一篇
这段时间研究了orm框架EF 写一写研究的历程和心得 先贴上核心代码 public interface ITransaction { bool IsTransaction { get;} void B ...
- 从客户端中检测到有潜在危险的 Request.Form 值
今天在使用Kindeditor的时候,出现了如题的错误. 错误如图: 百度了下,艰难的找了原来是Framework的问题,原来用的2.0,后面变成了4.0,验证级别也更高了: 解决办法:在config ...
- 利用Velocity结合Spring发email
在spring中发mail是一件容易的事,如果利用Velocity做mail的模板来发送就更得心应手了. 首先,还是简单描述sping中的配置,发mail需要一个mail的engin: <bea ...
- Maven向本地仓库导入官方仓库没有的jar包
最近工程中需要用到JNotify Java包,可是在Maven公共仓库中没有找到该jar文件,下面是一个补救的办法. 以jnotify-0.94.jar为例: 需要用到Maven如下命令: mvn i ...
- 嵌入式学习_AD学习篇
AD基础使用: 1.建立一个工作区 (.DsnWrk) workspace 2.建立一个PCB工程(.PrjPCB) project 3.建立一个PCB原理图文件(理论上告诉你两个点连接起来) 建立 ...