`
NistCK
  • 浏览: 38734 次
  • 性别: Icon_minigender_1
  • 来自: 合肥
社区版块
存档分类
最新评论

Java 23种模式一点就通

阅读更多

创建型模式


FACTORY

人才市场:以往是要哪个人才,就找哪个人才,效率低,现在有了人才市场,我们只需直接去人才市场挑一个好了;

BUILDER

生产流水线:以前是手工业作坊式的人工单个单个的生产零件然后一步一步组装做,好比有了工业革命,现在都由生产流水线代替了。如要造丰田汽车,先制定汽车的构造如由车胎、方向盘、发动机组成。再以此构造标准生产丰田汽车的车胎、方向盘、发动机。然后进行组装。最后得到丰田汽车;

 

PROTOTYPE

印刷术的发明:以前只能临贴才能保持和别人的字迹基本相同,直从印刷技术发明,从而保证了复制得和原物一模一样;

SINGLETON

唯一:以前是商标满天飞,相同的商标难免造成侵权,直从有商标保护法后,就保证了不会再产生第家企业使用相同的商标;


 

结构型模式

 

ADAPTER

集众人之私,成一己之公:武当派张三丰会太极拳,少林派智空大师会金刚般若掌,如果他们两个都成为我的师傅,我就既会太极拳,又会金刚般若掌了;


DECORATOR

青出于蓝而胜于蓝:武当派张三丰会太极拳,是我师傅,他教会了我太极拳,但我己还会点蒙古式摔交,张三丰却不会。于是我就成了DECORATOR模式的实现;

BRIDGE

白马非马:马之颜色有黑白,马之性别有公母。我们说”这是马”太抽象,说”这是黑色的公马”又太死板,只有将颜色与性别和马动态组合,”这是(黑色的或白色的)(公或母)马”才显得灵活而飘逸,如此bridge模式精髓得矣。

 

COMPOSITE

大家族:子又生孙,孙又生子,子子孙孙,无穷尽也,将众多纷杂的人口组织成一个按辈分排列的大家族即是此模式的实现;

 

FACADE

求同存异:高中毕业需读初中和高中,博士也需读初中和高中,因此国家将初中和高中普及成九年制义务教育;

FLYWEIGHT

一劳永逸:认识三千汉字,可以应付日常读书与写字,可见头脑中存在这个汉字库的重要;

 

PROXY

垂帘听政:犹如清朝康熙年间的四大府臣,很多权利不在皇帝手里,必须通过辅佐大臣去


行为模式

CHAIN OF RESPONSIBLEITY

租房:以前为了找房到处打听,效率低且找不到好的房源。现在有了房屋中介,于是向房屋中介提出租房请求,中介提供一个合适的房源,满意则不再请求,不满意继续看房,直到满意为止;


COMMAND

借刀杀人:以前是想杀谁就杀,但一段时间后领悟到,长此以往必将结仇太多,于是假手他人,挑拨他人之间的关系从而达到自己的目的;

 

INTERPRETER

文言文注释:一段文言文,将它翻译成白话文;

 

ITERATOR

赶尽杀绝:一个一个的搜索,绝不放掉一个;

 

MEDIATOR

三角债:本来千头万绪的债务关系,忽出来一中介,包揽其一切,于是三角关系变成了独立的三方找第四方中介的关系;

DMEMENTO

有福同享:我有多少,你就有多少;

 

OBSERVER

看守者:一旦被看守者有什么异常情况,定会及时做出反应;

 

STATE

进出自由:如一扇门,能进能出,如果有很多人随时进进出出必定显得杂乱而安全,如今设一保安限制其进出,如此各人进出才显得规范;

STRATEGY

久病成良医:如人生病可以有各种症状,但经过长期摸索,就可以总结出感冒、肺病、肝炎等几种;

TEMPLATE METHOD

理论不一定要实践:教练的学生会游泳就行了,至于教练会不会则无关紧要;

 

VISITOR

依法治罪:因张三杀人要被处死,李四偷窃要被罚款。由此势必制定处罚制度,故制定法律写明杀人、放火、偷窃等罪要受什么处罚,经通过后须变动要小。今后有人犯罪不管是谁,按条例处罚即是,这就是访问者模式诞生的全过程;

 

原文地址: http://www.java-cn.com/club/html/18/n-518.html

分享到:
评论
发表评论

文章已被作者锁定,不允许评论。

相关推荐

    JAVA 23设计模式一点就通

    ### JAVA 23设计模式一点就通 #### 一、创建型模式 ##### FACTORY(工厂模式) 在软件开发过程中,经常会遇到需要根据不同的条件创建不同类型对象的情况。工厂模式提供了一个解决方案,它定义了一个创建对象的...

    大道至简-Java之23种模式一点就通

    ### 大道至简—Java之23种设计模式一点就通 在软件工程与程序设计领域中,设计模式作为一种经过验证的解决方案被广泛应用。本文将深入探讨23种Java设计模式中的几个核心概念,帮助读者更好地理解这些模式背后的原理...

    Java 23 种设计模式一点就通.docx

    Java中的23种设计模式分为三大类:创建型模式、结构型模式和行为型模式。 1. **创建型模式**: - **工厂模式(Factory)**:提供一个接口来创建对象,而不用指定具体类,使得代码更加灵活,易于扩展。 - **建造者...

    java IO类学习一点通

    Java IO 类的学习不仅仅是理解和掌握这些类的使用,更重要的是了解其背后的原理和设计模式。通过练习和实践,开发者能够灵活运用这些工具,解决实际的输入输出问题。对于初学者,可以从简单的文件读写开始,逐步接触...

    设计模式一点通之单态模式

    单态模式(Singleton Pattern)是设计模式中的一种基础模式,主要用来确保一个类只有一个实例,并提供一个全局访问点。在软件工程中,当一个类只能有一个实例而且客户可以从一个众所周知的访问点访问它时,这样的...

    JAVA连接IBM MQ - 一点一点一点.....1

    【JAVA连接IBM MQ】知识点详解 IBM MQ(Message Queuing)是IBM提供的一个消息中间件,用于在不同的应用程序之间安全、可靠地传输数据。在Java应用程序中与IBM MQ的交互通常涉及以下步骤: 1. **配置MQ环境**: -...

    最近5年133个Java面试问题列表

    - **基础知识:** Java中字符串是不可变的,这意味着一旦创建了一个字符串对象,其内容就不能更改。这带来了两个重要的特性:线程安全性和缓存效率。字符串常量池利用了字符串的不可变性,提高了字符串对象的复用率...

    java面试题(100道)

    Java作为一门广泛使用的编程语言,其面试题涵盖了众多的知识领域,包括基础语法、面向对象、集合框架、多线程、异常处理、IO流、网络编程、设计模式、JVM内存模型以及框架应用等。以下是对这100道Java面试题可能涉及...

    基于Java的实例开发源码-ftp简易服务器.zip

    Java的`java.lang.Thread`类或`java.util.concurrent`包中的线程池可以帮助我们实现这一点。 文件操作部分,Java的`java.io.File`类提供了丰富的文件和目录操作API,包括读取、写入、创建、删除等。对于FTP服务器来...

    最全的java面试题

    Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能和丰富的类库而备受青睐。在Java面试中,面试官通常会关注候选人的基础知识、编程能力、问题解决技巧以及对框架和最佳实践的理解。这份“最全的Java面试...

    为Java程序员而准备的Go入门教程指南.pdf

    - Go没有泛型,这一点在Go 1.18版本之后有了改变,但其泛型实现与Java并不相同。 - Java的字符串是不可变的,而Go的字符串是可变的。 - Java有异常处理机制,而Go通过错误(error)类型来处理错误情况。 - Java的包...

    jive.chm

    系统设计 1 jive设计思路 2 jive的工作内幕 3 Jive源代码研究 4 Jive中的设计模式 5 jive学习笔记 <br> 设计模式 1 大道至简-Java之23种模式一点就通 2 设计模式...

    SocketServer.rar

    在Java中,通常通过`java.net.ServerSocket`类的非阻塞模式实现这一点,或者使用`java.nio`包中的选择器(Selector)来监听多个套接字通道。 4. **多线程处理**: 在SocketServer中,为了同时处理多个客户端连接,...

    闪光灯手电筒

    打开应用后,用户只需轻轻一点,就能快速启动或关闭闪光灯。此外,许多应用还提供了各种模式,如常亮模式、闪烁模式(用于SOS求救信号)和颜色变化模式,以满足不同场景的需求。例如,在音乐会或者派对上,用户可以...

    Clean Code英文原版书

    这本书一点就通**:这段描述旨在向读者传达本书的核心价值——教会读者如何遵循一套明确的准则来编写更规范、更易于理解的代码。它暗示通过阅读本书,开发者能够快速掌握编写清晰代码的方法论。 #### 知识点概览 1....

    MOSFET drive

    虽然MOSFET技术早在1930年就被发明出来,比双极型晶体管早了大约20年,但直到20世纪70年代中期,功率MOSFET才开始在市场上普及。目前,成千上万的MOSFET被集成到各种现代电子产品中,从微处理器到“离散”的功率晶体...

    Pb.rar_画图板

    描述中的信息进一步证实了这一点,它详细说明了这个Java实现的画图板具有以下功能: 1. **画直线**:用户可以通过鼠标点击并拖动来绘制直线,这通常涉及到监听鼠标事件,计算两点之间的距离并绘制线段。 2. **画圆形...

    11原理 1:鞭辟入里 —— 线程 IO 模型(1).md

    Java的NIO(New IO或Non-blocking IO)是Java支持非阻塞IO的一种方式。它允许开发者使用基于通道(Channel)和缓冲区(Buffer)的IO操作。与传统的BIO(Blocking IO)相比,NIO支持非阻塞模式和选择器(Selector)...

Global site tag (gtag.js) - Google Analytics