- 浏览: 51238 次
- 性别:
- 来自: 待定
最新评论
-
huhu1018:
有那么点点糊涂。。
Spring mail 实例+详解 -
12616383:
谢谢3楼的提醒。。以后要认真起来,嘿嘿
java_croe 学习笔记之新IO---java.nio 之内存映射文件 -
kuaiyuelaogong:
楼主的代码只是拷贝的,呵呵,调用的都是第一个方法,楼下的想测试 ...
java_croe 学习笔记之新IO---java.nio 之内存映射文件 -
fabulous:
inputStream
35169c9e
672耗时
Buff ...
java_croe 学习笔记之新IO---java.nio 之内存映射文件 -
mercyblitz:
模板利用了多态和抽象。
模板方法模式
文章列表
链表——双端链表:
双端链表和单向列表时相似的,但是在单向列表的基础上增加了一个特性,就是增加了对最后一个链接点的引用,就像对第一个链接点的引用一样。但我们试图寻找最后一个链接点的时候就不用像单向链 ...
链表——前言:
(小弟初学数据结构,有错误的地方望大家不吝赐教)
认识链表:
列表相比数组更具有优势,链表不同于数据和其他数据结构依靠位置来进行访问或者其他操作,如数组是依靠下表来操作数据。而链 ...
、模式概述
从设计模式的类型上来说,简单工厂模式是属于创建型模式,又叫做静态工厂方法(Static Factory Method)模式,但不属于23种GOF设计模式之一。简单工厂模式是由一个工厂对象决定创建出哪一种产品类的实例。 ...
队列
队列数据顺序是先进先出,后进后出.队列添加数据的方式很特别,传统意义上的队列,删除或者添加数据时,后面或者前面的所有的数据会依次移动一位。但是这样效率会很低。所以队列的数据排列上会在数组的前端空出几个缓冲位置,这样当操作队列的时候只需要移动指针,而不需要操作整个队列。
class Queue{
private int maxSize;
private long[] queArray;
private int front;
private int rear;
private int nItems;
public Queue(int s){
max ...
栈
1. 栈(stack)与堆(heap)都是Java用来在Ram中存放数据的地方。与C++不同,Java自动管理栈和堆,程序员不能直接地设置栈或堆。 2. 栈的优势是,存取速度比堆要快,仅次于直接位于CPU中的寄存器。但缺点是,存在栈中的数据大小与生存期必须是确定的,缺乏灵活性。另外,栈数据可以共享,详见第3点。堆的优势是可以动态地分配内存大小,生存期也不必事先告诉编译器,Java的垃圾收集器会自动收走这些不再使用的数据。但缺点是,由于要在运行时动态分配内存,存取速度较慢。
class Stackx{
public static void main(String[] ...
插入算法
循环数组,以指针数据为基值 并且记录,,通过和左侧(右侧)的循环比较,当比较值大于(小于)基值时将大的值至后,指针继续移动,比较,置换。直到遇到小于基值,或者到数组边界时截止,并且置换至首位。结束一次内循环,这是外循环的指针左侧的是有序。
class Sort{
private long[] a;
private int nElement;
public Sort(long[] array){
this.a = array;
}
public static void main(String[] args) {
long[] a ...
选择排序
选择排序 观其名,识其意。和冒泡一样通过嵌套循环将数组所有对象扫描一遍,选择最小(最大)的对象, 将其置换至对应的位置(a[0]/a[length-1]). 这里可以将排序的过程看做两个步骤。 1 循环扫描数组,选择当前最小的对象并且记录其位置。 2 将最小的对象置换至对应的位置上。
class Sort{
private long[] a;
private int nElement;
public Sort(long[] array){
this.a = array;
}
public static void main(String ...
冒泡排序
该排序通过将数组嵌套循环, 将相邻的两个对象进行比较,正序排序为例,如果a[0]的对象大于a[1]的对象, 则将两个对象位置交换,将小的对象置前,直到数组结束,排序的过程中每次循环时,指针始终 指向是当前最大的对象,将次对象与后面的对象相比较,当小于后一位对象时,置换,指针依然指向 当前最大的对象。当一次循环结束时,已将最大的对象移至 数组尾部。以此类推完成排序。
class Sort{
private long[] a;
private int nElement;
public Sort(long[] array){
this.a = array;
...
解释:将文件的一段区域映射到内存中,比传统的文件处理速度要快很多
参考:
无格式输入流 110秒
缓冲输入流 9.9秒
随机存取文件 162秒
内存映射文件 7.2秒
例子
package twelve;
import java.io.BufferedInputStream;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import j ...
保存对象引用:
基于前面的例子,我们现在假设每个Manager 都拥有一个秘书Employee,而且一个或者多个Manager 拥有的是同一个秘书,我们不希望保存对象流时出现这种状况, 2个manager 一个秘书employee ,保存时,一共保存了3个employee。这样的话当希望对秘书employee 作出修改时,必须找出其他拷贝对象,再逐一修改。
我们希望做的是只保存和恢复秘书的一个拷贝,磁盘上的对象与内存中的对象布局完全一致。称其为 持久性 。想要达到这种效果,java 使用序列化的 方法,也就是 对象序列化:
1 所有保存到磁盘的对象都有一个序列
2 当向磁盘存储一 ...
- 2009-08-20 23:11
- 浏览 1249
- 评论(0)
一、串行化的概念和目的
1.什么是串行化
对象的寿命通常随着生成该对象的程序的终止而终止。有时候,可能需要将对象的状态保存下来,在需要时再将对象恢复。我们把对象的这种能记录自己的状态以便将 ...
- 2009-08-19 23:20
- 浏览 904
- 评论(2)
java.lang.StringBuffer
java.lang.StringBuilder
下面的源代码可以看出两个都是继承了AbstractStringBuilder 这个类,不同的是一个线程安全的,一个不是线程安全的
源代码:
StringBuffer
public final class StringBuffer
extends AbstractStringBuilder
implements java.io.Serializable, CharSequence
{
public synchronized StringBuff ...
- 2009-08-18 23:11
- 浏览 870
- 评论(0)
1 异常的分类:Error:java运行时系统的内部错误和资源耗尽的错误,迫使程序终止。
Exception:由于程序错误导致的异常RuntimeException 及曾经能正常运行,由于某种原因导致的异常。
2 抛出异常的方法: throws 抛出异常,交给上一层处理。一般适用于无需自己处理,或者自己处理不好的异常
try catch 捕获异常,处理异常。
3 finally :捕捉到异常后必须要执行的程序块。
建议使用try/catch,try/final ...
- 2009-08-06 23:24
- 浏览 839
- 评论(0)
一共有6处问题,你能找出几处来?
1 OutputStreamWriter out = ...
2 java.sql.Connection conn = ...
3 try { // ⑸
4 Statement stat = conn.createStatement();
5 ResultSet rs = stat.executeQuery(
6 "select uid, name from user");
7 while (rs.next())
8 {
9 ou ...
- 2009-08-06 23:04
- 浏览 810
- 评论(0)
1 接口是什么?
接口是用来描述类具备的功能,但是并不给出具体的实现。一个类可以继承1个或者多个借口。通过接口来实现多继承。
2接口可以做什么:
在接口定义的方法不需要提供关键字public, 因为接口中所有的方法自动属于public的。
接口中可以包含多个方法,可以再接口中定义常量。
3接口不能做什么?
接口中不能含有实例域,也不能在接口中实现方法。
定义一个接口
package six;
/**
@Title Comparable.java
@description TODO
@author qinpeng
@d ...
- 2009-07-28 23:12
- 浏览 964
- 评论(0)