自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 Java设计模式——对象行为模式——访问者模式(VISITOR)

定义封装一些作用域某种数据结构中的个元素的操作,在不改变这个数据结构的 前提下,定义作用于这些元素的新的操作。一、概述    访问者模式是一种较为复杂的行为型设计模式,它包含访问者和被访问元素两个主要组成部分,这些被访问的元素通常具有不同的类型,且不同的访问者可以对它们进行不同的访问操作。在使用访问者模式时,被访问元素通常不是单独存在的,它们存储在一个集合中,这个集合被称为“对象结构”,访问者通过...

2018-04-27 21:00:36 224

原创 Java设计模式——行为模式——模板方法模式(TEMPLATE METHOD)

模板方法模式概念  模板方法模式属于行为型模式,它定义一个操作中的算法的骨架,而将一些步骤推迟到子类当中实现。父类抽取并实现的是公共方法,对于可变方法,父类做的只是定义了可变行为的接口,具体实现留给子类去完成,实现对代码的重复利用。模式中的角色  抽象类(AbstractClass):实现了模板方法,定义了算法的骨架。  具体类(ConcreteClass):实现抽象类中的抽象方法,已完成完整的算...

2018-04-27 17:08:34 277

原创 Java设计模式——行为模式——策略模式(STRATEGY)

策略模式概念其用意是针对一组算法,将每一个算法封装到具有共同接口的独立的类中,从而使得它们可以相互替换。策略模式使得算法可以在不影响到客户端的情况下发生变化。策略模式的结构  策略模式是对算法的包装,是把使用算法的责任和算法本身分割开来,委派给不同的对象管理。策略模式通常把一个系列的算法包装到一系列的策略类里面,作为一个抽象策略类的子类。用一句话来说,就是:“准备一组算法,并将每一个算法封装起来,...

2018-04-26 20:41:26 178

原创 Java设计模式——行为模式——状态模式(STATE)

状态模式定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。允许一个对象在其内部状态改变时改变它的行为。对象看起来似乎修改了它的类uml        Context:上下文环境,定义客户感兴趣的接口,维护一个State子类的实例,该实例定义了对象的当前状态State:抽象状态,定义一个接口以封装与 Context 的一个特定状态相关的行为。Co...

2018-04-26 20:25:39 206

原创 Java设计模式——行为模式——观察者模式(OBSERVER)

观察者模式概念在对象之间定义了一对多的依赖,这样一来,当一个对象改变状态,依赖它的对象会收到通知并自动更新。抽象被观察者角色(Subject):也就是一个抽象主题,它把所有对观察者对象的引用保存在一个集合中,每个主题都可以有任意数量的观察者。抽象主题提供一个接口,可以增加和删除观察者角色。一般用一个抽象类和接口来实现。抽象观察者角色(Observer):为所有的具体观察者定义一个接口,在得到主题通...

2018-04-26 16:47:29 181

原创 Java设计模式——行为模式——备忘录模式(MEMENTO)

备忘录模式在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外的保存 这个状态。三个角色:Originator:发起人,创建一个备忘录,可以记录,恢复自身的内部状态,还可根据 需求决定存储那些内部状态。Memento:备忘录,存储发起人角色的内部状态,并防止外部对象访问备忘录。Caretaker:管理者,存储备忘录,不能对备忘录内容进行访问,只能将其传递 给其他对象。UML类图使用场景保...

2018-04-26 13:01:56 195

原创 Java设计模式——行为模式——中介者模式(MEDIATOR)

中介者模式的定义用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。中介者模式的优点适当地使用中介者模式可以避免同事类之间的过度耦合,使得各同事类之间可以相对独立地使用。使用中介者模式可以将对象间一对多的关联转变为一对一的关联,使对象间的关系易于理解和维护。使用中介者模式可以将对象的行为和协作进行抽象,能够比较灵活的处理对象间...

2018-04-26 10:09:04 420

原创 Java设计模式——行为模式——迭代器模式(ITWEATOR)

迭代器模式(Iterator),提供一种方法顺序访问一个聚合对象中的各种元素,而又不暴露该对象的内部表示。抽象迭代器(Iterator)角色:一般定义为接口,用来定义访问和遍历元素的接口。具体迭代器(ConcreteIterator)角色:实现对聚合对象的遍历,并跟踪遍历时的当前位置。抽象聚合(Aggregate)角色:定义创建相应迭代器对象的接口。具体聚合(ConcreteAggregate)角...

2018-04-25 21:23:18 223

原创 Java设计模式——行为模式——解释器模式(INTERPRETER)

解释器模式解释器模式(Interpreter Pattern)提供了评估语言的语法或表达式的方式,它属于行为型模式。这种模式实现了一个表达式接口,该接口解释一个特定的上下文。这种模式被用在 SQL 解析、符号处理引擎等。(1)抽象表达式角色(AbstractExpression): 声明一个抽象的解释操作,这个接口为所有具体表达式角色都要实现的.(2)终结符表达式角色(TerminalExpres...

2018-04-25 20:33:27 163

原创 Java设计模式——行为模式——命令模式(COMMAND)

命令模式:通过封装一组完全不相关的对象相互之间的的交互及通讯来完成松耦合。允许某一个对象的行为的变化是独立于其他对象的。优点1.降低对象之间的耦合度。2.新的命令可以很容易地加入到系统中。3.可以比较容易地设计一个组合命令。4.调用同一方法实现不同的功能缺点使用命令模式可能会导致某些系统有过多的具体命令类。因为针对每一个命令都需要设计一个具体命令类,因此某些系统可能需要大量具体命令类,这将影响命令...

2018-04-25 18:21:55 192

原创 Java设计模式——行为模式——职责链模式(Chain of Responsibility)

责任链模式:将能够处理同一类请求的对象连成一条链,使这些对象都有机会处理请求,所提交的请求沿着链传递。从而避免请求的发送者和接受者之间的耦合关系。链上的对象逐个判断是否有能力处理该请求,如果能则就处理,如果不能,则传给链上的下一个对象。直到有一个对象处理它为止。特点  1)被观察者需要持有一个或者多个观察者对象。  2)系统中一个模块的变化,某些模块也会跟随着变化。UML在责任链模式中,作为请求接...

2018-04-25 16:32:23 187

原创 Java设计模式——结构型模式——代理模式(PROXY)

代理模式的定义:为其他对象提供一种代理以控制对这个对象的访问。在某些情况下,一个对象不适合或者不能直接引用另一个对象,而代理对象可以在客户端和目标对象之间起到中介的作用。代理模式:  人如其名,代理相信大家都可以经常看到什么什么代理,现实中代理太多了。感受最真实的是火车票的代理,经常可以在街上看到,你买票的是在代理商买的,但是付的钱依然会交给铁大哥,这就是代理。现实中的你可能会接触的例子就是叫同学...

2018-04-17 18:07:13 156

原创 Java设计模式——结构型模式——享元模式(FLYWEIGHT)

享元模式(Flyweight Pattern),又称轻量级模式(这也是其英文名为FlyWeight的原因),通过共享技术有效地实现了大量细粒度对象的复用。也就是说在一个系统中如果有多个相同的对象,那么只共享一份就可以了,不必每个都去实例化一个对象。在了解享元模式之前我们先要了解两个概念:内部状态、外部状态。      内部状态:在享元对象内部不随外界环境改变而改变的共享部分。      外部状态:...

2018-04-17 17:43:13 130

原创 Java设计模式——结构型模式——外观模式(FACADE)

外观模式: 又称门面模式: 他隐藏了系统的复杂性,并向客户端提供了一个可以访问系统的接口。为子系统中的一组接口提供了一个统一的访问接口,这个接口使得子系统更容易被访问或者使用。      (1) Facade(外观角色):在客户端可以调用它的方法,在外观角色中可以知道相关的(一个或者多个)子系统的功能和责任;在正常情况下,它将所有从客户端发来的请求委派到相应的子系统去,传递给相应的子系统对象处理。...

2018-04-17 17:08:13 234

原创 Java设计模式——结构型模式——装饰器模式(DECORATOR)

装饰器模式(Decorator Pattern)允许向一个现有的对象添加新的功能,同时又不改变其结构。这种类型的设计模式属于结构型模式,它是作为现有的类的一个包装。这种模式创建了一个装饰类,用来包装原有的类,并在保持类方法签名完整性的前提下,提供了额外的功能。设计原则要使用装饰者模式,需要满足以下设计原则: 1、多用组合,少用继承 2、开放-关闭原则:类应该对拓展开放,对修改关闭UML类图由上自下...

2018-04-17 16:38:07 323

原创 Java设计模式——结构性模式——组合模式(COMPSITE)

组合模式,又称为 部分整体模式,把具有相似的一组对象 当做一个对象处理,用一种树状的结构来组合对象,再提供统一 的方法去访问相似的对象,以此忽略掉对象与对象容器间的差别。组合模式允许你将对象组合成树形结构来表现”部分-整体“的层次结构,使得客户以一致的方式处理单个对象以及对象的组合。组合模式实现的最关键的地方是——简单对象和复合对象必须实现相同的接口。这就是组合模式能够将组合对象和简单对象进行一致...

2018-04-05 14:19:29 1586 2

原创 Java设计模式——结构型模式——桥接模式(BRIDGE)

桥接模式(Bridge Pattern):将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。UML图抽象化(Abstraction)角色:抽象化给出的定义,并保存一个对实现化对象的引用。修正抽象化(Refined Abstraction)角色:扩展抽象化角色,改变和修正父类对抽象化的定义。...

2018-04-05 13:53:33 252

原创 Java设计模式——结构性模式——适配器模式(ADAPTER)

适配器模式(Adapter)把一个类的接口变换成客户端所期待的另一种接口,从而 使原本因接口不匹配而无法在一起工作的两个类能够在一起工作。两种适配器模式:根据适配器类与适配者类的关系不同,适配器模式可分为 类适配器 和 对象适配器两种,类适配器模式通过重继承对一个接口与另一个接口进行匹配,而对象适 配器则是 引用 关系。类适配器类适配器的三个角色:目标接口(Target):客户所期待的接口,目标是...

2018-04-04 21:53:15 183

转载 常见排序算法及对应的时间复杂度和空间复杂度

常见排序算法及对应的时间复杂度和空间复杂度排序算法经过了很长时间的演变,产生了很多种不同的方法。对于初学者来说,对它们进行整理便于理解记忆显得很重要。每种算法都有它特定的使用场合,很难通用。因此,我们很有必要对所有常见的排序算法进行归纳。排序大的分类可以分为两种:内排序和外排序。在排序过程中,全部记录存放在内存,则称为内排序,如果排序过程中需要使用外存,则称为外排序。下面讲的排序都是属于内排序。内...

2018-04-01 19:54:11 151

hadoop权威指南第三版

hadoop权威指南第三版七百零二页,pdf格式,欢迎下载。

2017-10-18

面试最好的回答模板

面试的基本问题的回答,看客可以模仿,找到适合自己的答案,切勿直接生搬硬套。

2017-10-16

java算法大全源码包

java,算法,BD,bin_sort,common,dijkstra,hash,heap_sort , huffman, ins_sort ,huffman,ins_sort,matmult,mst,opt_bin,p_queue,q_sort,quick_sort,radix_sort,red_black,template,make_tar

2017-10-16

java笔试题大集合及答案

几乎涉及到java的所有基础知识,线程,集合,关键字,继承封装多态,框架。部分有涉及到算法以及编程。

2017-10-13

github使用指南(git说明)

GitHub 上优秀开源项目真的是一大堆,就不一一推荐了,授人以鱼不如授人以渔,请大家自 行主动发掘自己需要的开源项目吧,不管是应用在实际项目上,还是对源码的学习,都是提 升自己工作效率与技能的很重要的一个渠道,总有一天,你会突然意识到,原来不知不觉你 已经走了这么远!

2017-10-13

hadoop权威指南中文版

本书从Hadoop 的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能 处理海量数据集的理想I具。全共共14 章,3 个附录,涉及的主题包括:Haddoop简介;MapReduce 简介; Hadoop分布式文件系统; Hadoop的l/O、MapReduce 应用程序开发; MapReduce的工作 机制; MapReduce 的类型和格式; MapReduce 的特性: 如何安装Hadoop 集群,如何管理Hadoop; Pig简介; Hbase 简介: ZooKeeper简介,最后还提供了丰富的案例分析。 本书是Hadoop 权威参考, 程阿可从中探索如何分析海量数据集,管理员可以从中了解如 何安装与运行Hadoop集群。

2017-10-13

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

TA关注的人

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