了解设计模式

原创 2012年03月22日 19:04:01

设计模式(Design pattern)是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。 毫无疑问,设计模式于己于他人于系统都是多赢的,设计模式使代码编制真正工程化,设计模式是软件工程的基石,如同大厦的一块块砖石一样。

java一共23种设计模式!

引用《软件秘笈-设计模式那点事》书籍:

按照目的来分,设计模式可以分为创建型模式、结构型模式和行为型模式。
创建型模式用来处理对象的创建过程;结构型模式用来处理类或者对象的组合;行为型模式用来对类或对象怎样交互和怎样分配职责进行描述。

创建型模式用来处理对象的创建过程,主要包含以下5种设计模式:
 工厂方法模式(Factory Method Pattern)
 抽象工厂模式(Abstract Factory Pattern)
 建造者模式(Builder Pattern)
 原型模式(Prototype Pattern)
 单例模式(Singleton Pattern)

结构型模式用来处理类或者对象的组合,主要包含以下7种设计模式:
 适配器模式(Adapter Pattern)
 桥接模式(Bridge Pattern)
 组合模式(Composite Pattern)
 装饰者模式(Decorator Pattern)
 外观模式(Facade Pattern)
 享元模式(Flyweight Pattern)
 代理模式(Proxy Pattern)

行为型模式用来对类或对象怎样交互和怎样分配职责进行描述,主要包含以下11种设计模式:
 责任链模式(Chain of Responsibility Pattern)
 命令模式(Command Pattern)
 解释器模式(Interpreter Pattern)
 迭代器模式(Iterator Pattern)
 中介者模式(Mediator Pattern)
 备忘录模式(Memento Pattern)
 观察者模式(Observer Pattern)
 状态模式(State Pattern)
 策略模式(Strategy Pattern)
 模板方法模式(Template Method Pattern)
 访问者模式(Visitor Pattern)

Singleton

  结构

  意图 保证一个类仅有一个实例,并提供一个访问它的全局访问点。
  适用性 当类只能有一个实例而且客户可以从一个众所周知的访问点访问它时。

  当这个唯一实例应该是通过子类化可扩展的,并且客户应该无需更改代码就能使用一个扩展的实例时。

//饿汉单例 
public class EagerSingleTon { 
private static EagerSingleTon m_instance=new EagerSingleTon(); 
private EagerSingleTon(){}; 
public static EagerSingleTon get_instance(){ 
return m_instance; 
} 
} 


//懒汉单例 

public class LazySingleton { 
private static LazySingleton m_instance=null; 
private LazySingleton(){}; 
synchronized public static LazySingleton getInstance(){ 
if(m_instance==null){ 
m_instance= new LazySingleton(); 
} 
return m_instance; 
} 
} 


 

Java - 简述一下你了解的设计模式。

所谓设计模式,就是一套被反复使用的代码设计经验的总结(情境中一个问题经过证实的一个解决方案)。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性。设计模式使人们可以更加简单方便的复用...
  • chimomo
  • chimomo
  • 2017年11月03日 10:03
  • 360

java 设计模式举例说明

1,单例设计模式 package org.test; class A {     private final static A a=new A();     private A(){  ...
  • fulq1234
  • fulq1234
  • 2016年11月21日 11:23
  • 148

简述JAVA的几种设计模式

一、工厂模式 参考文章:
  • yanjiee
  • yanjiee
  • 2014年05月19日 21:43
  • 737

PHP设计模式理解

一听别人用了什么什么设计模式,总感觉多么高大上似得。其实仔细理解起来,会发现你自己平时敲代码的时候有很多的思路原则,也正式某些设计模式中所要达到的思想。无非是前人开发中碰到的问题时,不利于继续开发维护...
  • ty_hf
  • ty_hf
  • 2016年07月28日 22:58
  • 916

java面试题(71-85)

摘要:这一部分主要包括了UML(统一建模语言)、面向对象的设计原则(六原则一法则)、GoF设计模式、企业级设计模式、JDBC(Java数据库连接)、XML(可扩展标记语言)等知识。 71...
  • qinyanbin123
  • qinyanbin123
  • 2015年04月27日 10:50
  • 905

九种常用设计模式的简单应用

什么是设计模式 一、工厂方法模式(Factory Method Pattern) 1、1适用于以下情况 1、2类图 1、3实例:工厂方法模式之多数据库链接的实现 1、4优缺点 二、单例模式...
  • guduxiaomo123
  • guduxiaomo123
  • 2014年05月12日 09:59
  • 986

你所知道的设计模式有哪些?我来给你讲常用的

你所知道的设计模式有哪些 Java中一般认为有23 种设计模式,我们不需要所有的都会,但是其中常用的几种设计模式应该去掌握。下面列出了所有的设计模式。需要掌握的设计模式我单独列出来了,当然能掌握的越多...
  • LiuHai2014csd
  • LiuHai2014csd
  • 2017年03月05日 15:52
  • 2413

设计模式学习的几点建议

如如何才能更好地抓住设计思想和本质? 深入理解和多加实践。建议大家的一种模式学习流程如下:先通过一些生活实例引入某种设计模式,然后学习该模式的动机、定义和结构,再学习一两个使用该模式的典型实例,接下...
  • LZQ19931007
  • LZQ19931007
  • 2016年04月12日 14:42
  • 1203

java23种设计模式总结

设计模式(Design Patterns)                                   ——可复用面向对象软件的基础 设计模式(Design pattern)是一套...
  • duchao123duchao
  • duchao123duchao
  • 2016年04月05日 14:45
  • 1392

看了这么多少关于设计模式的知识,下面我说说自己的看法吧。

一、何为设计模式?设计模式有何作用?   首先设计模式是一个相当抽象的名词,并不代表任何事物事情,仅仅表示的是一种编程的理念,一种思想。 使用设计模式部分理念,可以帮我们搭建优良,可维护、可拓展性...
  • lhl814109044
  • lhl814109044
  • 2015年06月02日 15:41
  • 366
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:了解设计模式
举报原因:
原因补充:

(最多只允许输入30个字)