
java
delavior
一场游戏一场梦
展开
-
Java7 NIO2
NIO2的关键基础类: Path:该类中的方法可以用来获取路径信息,访问该路径中的各元素,将路径转换为其他形式,或提取路径中的一部分。有的方法还可以匹配路径字串以及移除路径中的冗余项 Paths:工具类,提供一个返回一个路径的的辅助方法,比如get(String first,String ... more)和get(URI uri) FileSystem:与文件转载 2014-11-26 13:29:06 · 430 阅读 · 0 评论 -
单链表的简单实现
节点类:package net.hkh.classic.list;import java.io.Serializable;/** * @desc: 节点类 * @author: houkh * @date: Dec 3, 2014 */public class Node implements Comparable, Serializable { private stat原创 2014-12-03 15:43:40 · 395 阅读 · 0 评论 -
Java xml解析的四种常用方式
一.四种解析方式介绍及优缺点分析:1. DOM(Document Object Model) DOM是用与平台和语言无关的方式表示XML文档的官方W3C标准。DOM是以层次结构组织的节点或信息片断的集合。这个层次结构允许开发人员在树中寻找特定信息。分析该结构通常需要加载整个文档和构造层次结构,然后才能做其他工作。由于它是基于信息层次的,因而DOM被认为转载 2014-12-04 09:15:06 · 314 阅读 · 0 评论 -
冒泡排序实现
public static void bubbleSort(Comparable[] c) { for (int i = 0; i < c. length; i++) { Comparable tmp = null ; boolean isExchanged = false;原创 2014-12-03 16:57:18 · 336 阅读 · 0 评论 -
clone方法的实现
public static T cloneTo(T src) throws RuntimeException { ByteArrayOutputStream baos = new ByteArrayOutputStream(); ObjectOutputStream oos = null; Obje转载 2014-12-03 16:53:53 · 382 阅读 · 0 评论 -
ehcache使用入门
1.创建CacheManager,创建ehcache有四种方式: a.使用默认配置文件创建。在classpath中查找ehcache.xml,如果找不到则使用ehcache.jar中ehcache-failsafe.xml文件 CacheManager manager=CacheManager.create(); b.使用指定配置文件创建。原创 2015-01-12 13:48:20 · 447 阅读 · 0 评论 -
Java计算字符串和文件的MD5与SHA1
package net.hkh.util;import java.io.FileInputStream;import java.io.IOException;import java.io.UnsupportedEncodingException;import java.security.DigestInputStream;import java.security.MessageDige转载 2014-12-08 15:24:19 · 865 阅读 · 0 评论 -
MVC中的各种Object
BO:business object,业务对象。把业务逻辑封装成一个对象,通过调用DAO方法,结合PO,VO进行业务操作。这个对象可以包括一个或多个其他对象。如求职者简历中包括教育经历、工作经历、社会关系等,每个可以分别对应一个PO,而这多个PO即可以放在一个BO中。PO:persistence object,持久化对象。可看作与数据库的表相对应的java对象。一个PO对应表中的一条记录,多条原创 2014-12-26 10:29:54 · 632 阅读 · 0 评论 -
List与数组的转换
List->Arr: list.toArray(arrType arrName[arrSize]);注意:因list不能包含基本类型元素,故不能转换为基本类型数组Arr->List: Arrays.asList(arr);注意:此时生成的list为java.util.Arrays$ArrayList,是继承自AbstractList,继承了静态数组大小固定的特性,而且不支持re原创 2014-12-12 10:45:19 · 230 阅读 · 0 评论 -
使用jxl操作Excel
基本操作:==1.创建Excel文件: WritableWorkbook book=Workbook.createWorkbook(new File("path")); 2.创建Sheet: WritableSheet sheet=book.createSheet("sheetName",sheetIndex);3.设置行宽、列高: sh原创 2014-12-30 14:03:27 · 432 阅读 · 0 评论 -
Singleton实现
单例模式的实现大致有以下几种方式:饿汉式:/** * @desc: 饿汉式,类加载时即创建实例 * @desc: feature:可以通过反射机制攻击;线程安全(多个类加载器除外) * @author: houkh * @date: Dec 2, 2014 */public class HungrySingletonOfBasic { public st转载 2014-12-02 17:48:46 · 287 阅读 · 0 评论 -
Java JSON解析的两种常用方式
Java常用的解析JSON的方式有两种,一种是JSON-lib,一种是org.json。JSON-lib:依赖包: commons-beanutils.jar commons-collections.jar commons-lang.jar commons-logging.jar ezmorph.jar转载 2014-12-02 14:29:17 · 427 阅读 · 0 评论 -
为什么String是不可变的
String是Java中的不可变类。不可变类即其对象是不修改的,对象一旦建立,就不可改变。不可变类有许多优点,下面简要介绍一下String为什么是不可变类,对内存、同步、数据结构的认识会有助于理解。1.String常量池的需要常量池(String intern pool)是方法区(method area)中的一个特殊区域。当一个String被创建时,如果该字符串在常量池中已存在,那么将会返翻译 2015-01-06 11:18:03 · 323 阅读 · 0 评论 -
简单单链表实现
节点类:/** * @desc 节点实现 * @author houkh */public class Node { private Object data; private Node next; public Node() { this.data = null; this.next = null; } public Node(Object data, Node原创 2014-11-26 16:55:01 · 242 阅读 · 0 评论 -
字节码
JVM字节码是一种从人类可读的源码向机器码过渡的中间状态。即字节码是一种中间语言(IL)形态,不是真正的机器码。将java源码变成字节码的过程不是C或C++的那种编译。Java的"编译器"也不同于gcc,实际上它只是一个针对java源码生成类文件的工具。Java体系中真正的编译器是JIT。从某种意义上说,Java是"动态编译"的,即JIT运行时编译。转载 2014-11-24 10:17:18 · 277 阅读 · 0 评论 -
Java type & Class member
Java type:primitive & reference type.其中,reference type包括class、array、interface. class member:field、method、member class和member interface.转载 2014-11-17 21:07:59 · 461 阅读 · 0 评论 -
面向对象三要素五原则六视点
一、面向对象三要素1、封装;2、继承;3、多态。二、面向对象五原则1、单一职责原则;2、开放-封闭原则(对扩展开放;对修改关闭);3、Liskov替换原则(子类型必须能够完全替换其父类型(继承);关注行为的替换(多态));4、依赖倒置原则(依赖抽象;面向接口编程等);5、接口隔离原则(接口尽量小;接口要稳定,职转载 2014-11-17 21:05:02 · 1588 阅读 · 0 评论 -
switch语句中的常量
java7之前,case语句中的常量只能是byte、char、short、int及其对应的封装类型,java7中增加了string.转载 2014-11-24 10:39:18 · 718 阅读 · 0 评论 -
java7异常处理新特性
1.multi-catch 可以在一个catch子句中通过|连接多个异常类型,即可以同时捕获多个异常2.final重抛异常 在重抛异常时,捕获类型定义为final类型可以抛出实际捕获到的类型3.try-with-resource(TWR) 在处理外部资源时可以把资源放在try的圆括号内,使其可以被自动化管理。 另外,java7对跟踪堆栈进转载 2014-11-24 11:22:40 · 372 阅读 · 0 评论 -
钻石语法
java7针对创建泛型和实例太过繁琐的问题,采用了新的类型推断语法。java7之前: Map>userLists=new HashMap>();钻石语法: Map>userLists=new HashMap();转载 2014-11-24 11:31:17 · 959 阅读 · 0 评论 -
Java7的数值文本表示
1.Java7之前处理二进制数值可以使用下面的方法:int x=Integer.parseInt("1100110",2);java7可以直接写为: int x=0b1100110;2.java7中允许使用下划线作为数字的连接符,即0b0001111000110111与0b0001_1110_0011_0111是等价的,但后者明显看起来要清楚多了转载 2014-11-24 10:46:49 · 297 阅读 · 0 评论 -
Jad反编译jar包
1.首先将jar包解压到classes文件夹,手动创建classes文件夹,然后在命令行中执行: cd classes //进入classes文件夹 jar -xvfM ../*.jar //解压2.然后使用jad解压后的class文件反编译成java文件: jad -sjava -dsrc -r 包名/**/*.class原创 2014-12-17 15:50:29 · 804 阅读 · 0 评论 -
java压缩、解压缩文件
package net.hkh.util;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.InputStream;import java.io.OutputStream;import java.util.Enumeration;impo转载 2014-12-31 10:42:41 · 325 阅读 · 0 评论