Java集合

常用集合 集合类的继承关系 集合类的时间复杂度 集合 ArrayList LinkedList 描述 1、可增长的数组长度 2、查询快 get() set() 常数级 3...

2019-05-28 09:34:19

阅读数 14

评论数 0

数据库

Oracle的Rownum和Rowid rownum和rowid都是伪列,但是两者的根本是不同的。 rownum是根据sql查询出的结果给每行分配一个逻辑编号,所以你的sql不同也就会导致最终rownum不同。 但是rowid是物理结构上的,在每条记录insert到数据库中时,都会有一个唯一的物...

2019-05-13 09:08:55

阅读数 167

评论数 0

SQL编写题目

用一条SQL 语句 查询出每门课都大于80 分的学生姓名 方法1: 1、查询出分数小于80的人的名字; 2、查询 NOT IN (1); 方法2: select name from table group by name having min(fenshu)>80 删除掉重...

2019-05-10 09:06:56

阅读数 17

评论数 0

Java基础篇(二)

抽象类和接口 抽象类: 1、包含一个抽象方法的类就是抽象类 2、声明而未被实现的方法,抽象方法必须使用abstract关键词字声明 3、抽象类被子类继承,子类(如果不是抽象类)必须重写抽象类中的所有抽象方法 4、抽象类不能被直接实例化,要通过其子类进行实例化 5、只要包含一个抽象方法的抽象类,该...

2019-05-10 09:00:59

阅读数 26

评论数 0

Java基础篇(一)

Servet生命周期 ●init() 在一个Servlet的生命周期中,init方法只会被执行一次。 ●service() 当一个客户请求改Servlet时,实际的处理工作全部有service方法来完成,service方法用来处理客户端的请求,并生成格式化数据返回给客户端。 ●destory()...

2019-05-07 08:43:42

阅读数 11

评论数 0

Java JVM 复习

一、JVM 1.1 运行时数据区组成 ●程序计数器 当前线程所执行字节码的行号指示器。 ●虚拟机栈(stack) 1、线程私有; 2、描述的是java方法执行的内存模型; 3、每个方法被执行时会同时创建一个栈帧用来存储局部变量表、操作栈、动态链接、方法出口等信息; 4、局部变量表所需的内存空间...

2019-05-06 13:33:35

阅读数 28

评论数 0

16、Memento 备忘录模式

在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态。这样就可以将该对象恢复到原先保存的状态。 我们在编程的时候,经常需要保存对象的中间状态,当需要的时候,可以恢复到这个状态。比如,我们使用Eclipse进行编程时,假如编写失误(例如不小心误删除了几行代码),我们希望返回删...

2019-03-20 17:29:05

阅读数 24

评论数 0

15、Interpreter 解释器模式

给定一种语言,定义他的文法的一种表示,并定义一个解释器,该解释器使用该表示来解释语言中句子。 类图 代码示例 1. classContext{} 2. abstractclassExpression{ 3. publicabstractObjectinterpreter(Context...

2019-03-18 12:35:03

阅读数 32

评论数 0

14、Visitor 访问者模式

封装某些作用于某种数据结构中各元素的操作,它可以在不改变数据结构的前提下定义作用于这些元素的新的操作。 类图 代码示例 访问者模式可能是行为类模式中最复杂的一种模式了。 1. classA{ 2. publicvoidmethod1(){ 3. System.out.println(...

2019-03-18 12:19:06

阅读数 22

评论数 0

13、Mediator 中介者(调停者)模式

用一个中介者对象封装一系列的对象交互,中介者使各对象不需要显示地相互作用,从而使耦合松散,而且可以独立地改变它们之间的交互。 类图 代码示例 我们使用一个例子来说明一下什么是同事类:有两个类A和B,类中各有一个数字,并且要保证类B中的数字永远是类A中数字的100倍。也就是说,当修改类A的...

2019-03-18 12:03:45

阅读数 66

评论数 0

12、Chain of Responsibility 职责链模式

使多个对象都有机会处理请求,从而避免了请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有对象处理它为止。 类图 代码示例 1. classLevel{ 2. privateintlevel=0; 3. publicLevel(intlevel)...

2019-03-18 11:50:10

阅读数 34

评论数 0

10、State 状态模式

当对象的状态改变时,同时改变其行为,很好理解!就拿QQ来说,有几种状态,在线、隐身、忙碌等,每个状态对应不同的操作,而且你的好友也能看到你的状态,所以,状态模式就两点:1、可以通过改变状态来获得不同的行为。2、你的好友能同时看到你的变化。 状态模式允许一个对象在其内部状态改变的时候改变其行为。这...

2019-03-18 11:35:57

阅读数 18

评论数 0

11、Strategy 策略模式

定义一组算法,将每个算法都封装起来,并且使他们之间可以互换。 策略模式是对算法的封装,把一系列的算法分别封装到对应的类中,并且这些类实现相同的接口,相互之间可以替换。 策略模式与模板模式 在前面说过的行为类模式中,有一种模式也是关注对算法的封装——模版方法模式,策略模式与模版方法模式的区别仅...

2019-03-06 18:41:26

阅读数 46

评论数 0

Proxy 代理模式

代理模式的定义:代理模式给某一个对象提供一个代理对象,并由代理对象控制对原对象的引用。举例说明,就是一个人或者一个机构代表另一个人或者另一个机构采取行动。在一些情况下,一个客户不想或者不能够直接引用一个对象,而代理对象可以在客户端和目标对象之前起到中介的作用。 通过上面的代理模式描述我们可以知道...

2019-03-06 18:14:36

阅读数 17

评论数 0

9、Command 命令模式

一个请求封装成一个对象,从而让你使用不同的请求把客户端参数化,对请求排队或者记录请求日志,可以提供命令的撤销和恢复功能。 举个例子,司令员下令让士兵去干件事情,从整个事情的角度来考虑,司令员的作用是,发出口令,口令经过传递,传到了士兵耳朵里,士兵去执行。这个过程好在,三者相互解耦,任何一方都不用...

2019-03-06 17:30:59

阅读数 56

评论数 0

设计模式

创建型模式 1、单例模式 2、Factory 工厂模式 3、Abstract Factory 抽象工厂 4、Builder 建造者模式 5、Prototype 原型模式 行为型模式 6、Iterator 迭代器模式 7、Observer 观察者模式 8、Template Meth...

2019-03-06 17:26:03

阅读数 24

评论数 0

5、Prototype 原型模式

原型模式被用在频繁调用且极其相似的对象上,它会克隆对象并设置改变后的属性,而且消耗的资源较少。 原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件: 实现Cloneable接口。在java语言有一个Cloneable接口,它的作...

2019-03-06 17:15:15

阅读数 48

评论数 0

4、Builder 建造者模式

建造者模式(Builder Pattern)使用多个简单的对象一步一步构建成一个复杂的对象。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。 建造者模式的关键特性是它将一个建造过程分解成很多步骤,也可以说,每个产品的建造会遵循同样的流程,不过流程内的每一个步骤都不尽相同。 一...

2019-03-06 17:04:50

阅读数 47

评论数 0

6、Iterator 迭代器模式

提供一种方法访问一个容器对象中各个元素,而又不暴露该对象的内部细节。 类图 代码实例 如果要问java中使用最多的一种模式,答案不是单例模式,也不是工厂模式,更不是策略模式,而是迭代器模式,先来看一段代码吧: 1. publicstaticvoidprint(Collecti...

2019-03-05 13:20:56

阅读数 30

评论数 0

8、Template Method 模板方法

模板方法模式是在日常开发中使用最为广泛的设计模式之一。 定义一个操作中算法的框架,而将一些步骤延迟到子类中,使得子类可以不改变算法的结构即可重定义该算法中的某些特定步骤。 类图 代码实例 某日,程序员A拿到一个任务:给定一个整数数组,把数组中的数由小到大排序,然后把排序之后的结果打印出...

2019-03-05 13:00:28

阅读数 71

评论数 0

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