- 博客(15)
- 收藏
- 关注
转载 JAVA设计模式:原型模式
定义:用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。类型:创建类模式类图:原型模式主要用于对象的复制,它的核心是就是类图中的原型类Prototype。Prototype类需要具备以下两个条件:实现Cloneable接口。在java语言有一个Cloneable接口,它的作用只有一个,就是在运行时通知虚拟机可以安全地在实现了此接口的类上使用clo
2015-05-22 15:26:54
327
转载 JAVA设计模式:建造者模式
定义:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。类型:创建类模式产品类:一般是一个较为复杂的对象,也就是说创建对象的过程比较复杂,一般会有比较多的代码量。在本类图中,产品类是一个具体的类,而非抽象类。实际编程中,产品类可以是由一个抽象类与它的不同实现组成,也可以是由多个抽象类与他们的实现组成。抽象建造者:引入抽象建造者的目的,是为了将建造的具体过程交
2015-05-22 15:25:10
460
转载 JAVA设计模式:抽象工厂模式
定义:为创建一组相关或相互依赖的对象提供一个接口,而且无需指定他们的具体类。类型:创建类模式类图:抽象工厂模式与工厂方法模式的区别抽象工厂模式是工厂方法模式的升级版本,他用来创建一组相关或者相互依赖的对象。他与工厂方法模式的区别就在于,工厂方法模式针对的是一个产品等级结构;而抽象工厂模式则是针对的多个产品等级结构。在编程中,通常一个产品结构,表现为一个接口或
2015-05-22 15:23:12
351
转载 JAVA设计模式:单例模式
定义:确保一个类只有一个实例,而且自行实例化并向整个系统提供这个实例。类型:创建类模式类图:类图知识点:1.类图分为三部分,依次是类名、属性、方法2.以>结尾的为注释信息3.修饰符+代表public,-代表private,#代表protected,什么都没有代表包可见。4.带下划线的属性或方法代表是静态的。5.对类图中对象的关
2015-05-22 15:22:31
307
转载 JAVA设计模式:工厂方法模式
定义:定义一个用于创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类的实例化延迟到其子类。类型:创建类模式类图:工厂方法模式代码1234567891011121314151617181
2015-05-22 15:20:33
351
转载 JAVA设计模式:观察者模式
定义:定义对象间一种一对多的依赖关系,使得当每一个对象改变状态,则所有依赖于它的对象都会得到通知并自动更新。类型:行为类模式类图:在软件系统中经常会有这样的需求:如果一个对象的状态发生改变,某些与它相关的对象也要随之做出相应的变化。比如,我们要设计一个右键菜单的功能,只要在软件的有效区域内点击鼠标右键,就会弹出一个菜单;再比如,我们要设计一个自动部署的功能,就像Ec
2015-05-22 15:19:38
354
转载 8张图理解Java基本原理
一图胜千言,下面图解均来自Program Creek 网站的Java教程,目前它们拥有最多的票选。如果图解没有阐明问题,那么你可以借助它的标题来一窥究竟。1、字符串不变性下面这张图展示了这段代码做了什么12String s = "abcd";s = s.concat("ef");
2015-05-22 15:16:24
551
转载 Java 8 默认方法和多继承
接口继承多个父接口假定有三个接口Interface A, Interface B, Interface C, 继承关系如下:123456789+---------------+ +------------+| Interface A |
2015-05-22 15:09:32
420
原创 Java并发的面试问题合集
1. 什么是原子操作?在Java Concurrency API中有哪些原子类(atomic classes)?原子操作是指一个不受其他操作影响的操作任务单元。原子操作是在多线程环境下避免数据不一致必须的手段。int++并不是一个原子操作,所以当一个线程读取它的值并加1时,另外一个线程有可能会读到之前的值,这就会引发错误。为了解决这个问题,必须保证增加操作是原子的,在JDK
2015-05-22 15:00:50
702
原创 关于JAVA线程的面试问题~
Java多线程面试问题1. 进程和线程之间有什么不同?一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用。而线程是在进程中执行的一个任务。Java运行环境是一个包含了不同的类和程序的单一进程。线程可以被称为轻量级进程。线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源。2. 多线程编程的好处是什么?在多线程程
2015-05-22 14:52:17
310
原创 JAVA实现的十种排序算法
package image; import java.util.Arrays; /** * 10个排序 * * @author yugi * */public class AllSrots{ /** * 直接选择排序 */ private stati
2015-05-22 14:49:28
328
转载 Java面试问题和答案(四)
1.队列和栈是什么,列出它们的区别?栈和队列两者都被用来预存储数据。java.util.Queue是一个接口,它的实现类在Java并发包中。队列允许先进先出(FIFO)检索元素,但并非总是这样。Deque接口允许从两端检索元素。栈与队列很相似,但它允许对元素进行后进先出(LIFO)进行检索。Stack是一个扩展自Vector的类,而Queue是一个接口。2.Coll
2015-05-22 14:34:35
533
转载 Java面试问题和答案(三)
21.HashMap和HashTable有何不同?(1)HashMap允许key和value为null,而HashTable不允许。(2)HashTable是同步的,而HashMap不是。所以HashMap适合单线程环境,HashTable适合多线程环境。(3)在Java1.4中引入了LinkedHashMap,HashMap的一个子类,假如你想要遍历顺序,你很容易从Has
2015-05-22 14:32:21
611
转载 Java面试问题和答案(二)
1.遍历一个List有哪些不同的方式?1234567891011List strList = newArrayList//使用for-each循环for(String obj : strList){ System.out.pr
2015-05-22 14:28:12
407
转载 Java面试问题和答案(一)
1.Java集合框架是什么?说出一些集合框架的优点?每种编程语言中都有集合,最初的Java版本包含几种集合类:Vector、Stack、HashTable和Array。随着集合的广泛使用,Java1.2提出了囊括所有集合接口、实现和算法的集合框架。在保证线程安全的情况下使用泛型和并发集合类,Java已经经历了很久。它还包括在Java并发包中,阻塞接口以及它们的实现。集合框架的部分优点如下:
2015-05-22 14:26:09
474
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人