自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

宋先森的博客

java小学生

  • 博客(11)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 设计模式之访问者模式

访问者模式(Visitor):表示一个作用于某对象结构中的各元素的操作。它使你可以不在改变个元素类的前提下定义作用于这些元素的新操作。 一、访问者模式在软件开发中,有时候我们对同一个对象可能会有不同的处理,对相同对象元素也存在不同的操作方式。比如,我们的银行账户,每个月都有收入和支出,不同的人(your girlFriend)去操作账户,有不同的操作方式。这就使用到了访问者模式。访问者模式的目的是

2017-12-11 17:56:57 378

原创 设计模式之解释器模式

解释器模式(Interpreter Pattern):给定一个语言,定义它的文法的一种表示,并定义一个解释器,这个解释器使用来解释语言中的句子。一、解释器模式解释器模式用来做各种各样的解释器,如正则表达式的解释器等等,其UML图如下所示: 解释器模式由以下部分组成:抽象表达式(Expression):声明一个所有的具体表达式角色都要实现的抽象接口。该接口中的interpret()方法,称作解释

2017-12-10 18:54:52 309

原创 设计模式之享元模式

享元模式(Flyweight Pattern):运用共享技术有效地支持大量细粒度的对象。用于减少创建对象的数量,以减少内存占用和提高性能。一、享元模式在软件开发过程中,如果有使用大量相同的对象,只要共享一个就可以,这就是享元模式,减少了不必要的内存消耗,其UML图如下所示: 享元模式由以下部分组成:抽象享元类(Flyweight): 所有具体享元类的超类或者接口,通过这个接口,Flyweight可

2017-12-09 22:12:30 292

原创 设计模式之中介者模式

中介者模式(Mediator):用一个中介对象来封装一系列的对象交互。中介者使各对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变他们之间的交互。一、中介者模式1.1 为什么使用中介者模式?在软件开发中,对象和对象之间存在着大量的关联关系,导致系统的结构变得复杂,可扩展性降低。举例来看,下图所示的各个国家之间的关系图,倘若再加入一个新的国家,需要和其相关联的国家进行连接,变得很复杂。

2017-12-08 22:15:21 344

原创 设计模式之职责链模式

职责链模式(Chain of Responsibility):很多个对象都有机会处理请求,从而避免请求的发送者和接受者之间的耦合关系。将这个对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。一、职责链模式职责链的UML图: 职责链由以下部分组成:抽象处理者角色(Handler):定义一个处理请求的接口,和一个后继连接(可选)具体处理者角色(ConcreteHandler):处理它所

2017-12-07 21:28:36 259

原创 设计模式之命令模式

命令模式(Command)将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化;对请求排队或者记录请求日志,以及支持可撤销的操作。一、命令模式在软件系统中,行为请求者与行为实现者通常是一种紧耦合的关系,但某些场合,比如需要对行为进行记录、撤销或重做、事务等处理时,这种无法抵御变化的紧耦合的设计就不太合适。需要用到命令模式,其UML图如下所示:命令模式由以下部分组成:命令(Command

2017-12-06 15:31:34 231

原创 设计模式之桥接模式

桥接模式(Bridge):将抽象部分与实现部分分离,使它们都可以独立的变化。一、桥接模式我们知道java的四个特性:封装、继承、多态、抽象。以继承为例,在一家衣服店,有很多类型的衣服,有T-shirt,短裤,夹克…..,而不同类型的衣服,又有不同的颜色,比如:红色、绿色、黑色……。按照继承的思想,我们可以这样理解: 但假如,该商店要加入另一种新的类型的衣服时,还得加三种不同的颜色。我们将每一种衣服

2017-12-05 17:23:23 346

原创 设计模式之单例模式

单例模式(Singleton):保证一个类仅有一个实例,并提供一个访问它的全局访问点。一、单例模式单例模式是设计模式中常见的设计模式,单例模式有以下特点:单例类只能有一个实例。单例类必须自己创建自己的唯一实例。单例类必须给所有的对象提供这一个实例。单例模式的UML图: Singleton类,将这个类的构造器私有化,使得在外部对象中,无法通过构造器来创建Singleton的实例,只能由该类自

2017-12-04 19:50:51 238

原创 设计模式之迭代器模式

迭代器模式(Iterator):提供一种方法顺序访问一个聚合对象中各个元素,而不是暴露该对象的内部表示。在软件开发过程中,因为业务的需要,我们会创建不同的集合或者数组,每次遍历取值都要重复相同的代码。在设计模式中能够将遍历进行封装,而不会暴露内部的表示,还能够提供多种不同的遍历方式。这就是迭代器模式,其UML图如下:迭代器模式由以下组成部分:抽象迭代器(Iterator):所有迭代器都需要实现的接

2017-12-03 23:00:01 233

原创 设计模式之组合模式

组合模式(Composite):将对象组合成树形结构,以表示“部分-整体”的层次结构。组合模式使得用户对单个对象和组合对象的使用具有一致性。一、组合模式组合模式又叫做部分-整体模式,常用来解决树型结构的问题。在下图所示的公司结构树中有工程部、人事部和下级子公司,这是一个典型的树形结构,可以利用组合模式描述公司的结构。 组合模式的UML图如下:组合模式由以下部分组成:抽象构件角色(Componen

2017-12-02 15:21:21 245

原创 设计模式之备忘录模式

备忘录模式(Memento):在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态,这样以后就可以将该对象恢复到原先保存的状态。作为一名码农,当你辛辛苦苦忙了一天,写了若干行代码,一不小心点了退出IDE,所有的劳动都付之东流,但此时的你,要是有随时往svn或者git上提交代码的习惯,恭喜你,你的代码可以回来了。这就是备忘录模式的必要性。所谓备忘录模式就是在不破坏封装的前提下,

2017-12-01 17:30:02 241

禅道开源版本

禅道开源版本,官方貌似不提供这个版本了,想用的拿去

2019-03-05

neo4j-community-3.3.6

linux版本neo4j 下载版本 Neo4j是一个高性能的,NOSQL图形数据库,它将结构化数据存储在网络上而不是表中。它是一个嵌入式的、基于磁盘的、具备完全的事务特性的Java持久化引擎,但是它将结构化数据存储在网络(从数学角度叫做图)上而不是表中。Neo4j也可以被看作是一个高性能的图引擎,该引擎具有成熟数据库的所有特性。

2018-10-24

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除