
j2se全是基础
文章平均质量分 76
六十三
这个作者很懒,什么都没留下…
展开
-
理解静态变量惰性初始化的双检锁模式
对于双检锁,其实有多种不同的用法,有很多种用法是无论如何不会出现问题的.我最初用双检锁来获取jndi对象时,立即有人告诉我双检锁是不安全的,我笑着告诉他:是否安全我比你更有把握. static DataSource ds = null;public static DataSource getDataSource(){ if(ds == null){ synchron...原创 2011-05-10 22:28:49 · 180 阅读 · 0 评论 -
java collection集合框架
Java集合框架使用总结出处:http://blog.youkuaiyun.com/nihao_201104/archive/2008/11/21/3345127.aspx 前言:本文是对Java集合框架做了一个概括性的解说,目的是对Java集合框架体系有个总体认识,如果你想学习具体的接口和类的使用方法,请参看Java API文档。 一、概述数据结构对程序设计有着深远的影...原创 2011-02-23 17:19:07 · 98 阅读 · 0 评论 -
java 冒泡排序、选择排序、插入排序、快速排序二分法查找代码
java 排序的代码 import java.util.Random;/** * 排序测试类 * * 排序算法的分类如下: 1.插入排序(直接插入排序、折半插入排序、希尔排序); 2.交换排序(冒泡泡排序、快速排序); * 3.选择排序(直接选择排序、堆排序); 4.归并排序; 5.基数排序。 * * 关于排序方法的选择: (1)若n较小(如n≤50),...原创 2011-02-23 20:42:19 · 164 阅读 · 0 评论 -
Java 中实例化对象方法
1、直接 new 调用默认构造器实例化对象,如:String str = new String("abc"); 2、通过工厂方法返回对象,如: //不知道这个算不算。。String str = String.valueOf(23); 3、通过反射,如: Object obj = Class.forName("java.lan...原创 2011-02-24 13:57:15 · 280 阅读 · 0 评论 -
Java util之常用数据类型特性盘点(一)
Java util之常用数据类型特性盘点 出处:http://www.iteye.com/topic/22192 java.util就相当于c++的STL,是Java的一个非常重要的包,有很多常用的数据类型,不同数据类型有不同的用途,而有些数据类似乎很相似,怎样选择应用,就需要对它们进行辨析。 下面列出了这些数据类型的特点,根据这些特点,就可以有针对性的选用 * 蓝色为接口,绿色为具体...原创 2011-02-24 15:47:00 · 93 阅读 · 0 评论 -
Java util之常用数据类型特性盘点 (二)
Java util之常用数据类型特性盘点 (二) 出处:http://www.iteye.com/topic/25107ArrayList是List接口的一个可变长数组实现。实现了所有List接口的操作,并允许存储null值。除了没有进行同步,ArrayList基本等同于Vector。在Vector中几乎对所有的方法都进行了同步,但ArrayList仅对writeObject和readOb...原创 2011-02-24 16:07:59 · 111 阅读 · 0 评论 -
Java util之常用数据类型特性盘点 (三)
Java util之常用数据类型特性盘点 (三) 出处:http://www.iteye.com/topic/825683 这篇我准备从源码的高度来看看集合中各个实现类的是如何组织我们存进去的数据的,主要包括Java类库中提供的几个具体的类: LinkedList ArrayList HashMap HashSet TreeMap TreeSet PriorityQueue(顺序按...原创 2011-02-24 16:22:30 · 134 阅读 · 0 评论 -
Java util之常用数据类型特性盘点 (HasMap深度分析)
出处:http://www.iteye.com/topic/754887 HashMap的数据结构HashMap主要是用数组来存储数据的,我们都知道它会对key进行哈希运算,哈系运算会有重复的哈希值,对于哈希值的冲突,HashMap采用链表来解决的。在HashMap里有这样的一句属性声明:transient Entry[] table; Entry就是H...原创 2011-02-24 17:57:01 · 120 阅读 · 0 评论 -
Java util之常用数据类型特性盘点(Map 四种同步方式的性能比较)
出处:http://www.iteye.com/topic/164644 使用 synchronized 关键字,这也是最原始的方法。代码如下 synchronized(anObject){ value = map.get(key);} 使用 JDK1.5 提供的锁(java.util.concurrent.locks.Lock...原创 2011-02-24 20:09:34 · 165 阅读 · 0 评论 -
DataSource 使用方法
转自:http://marshal.easymorse.com/archives/425 DataSource接口(javax.sql.DataSource)替代DriverManager获取Connection的方法,有以下好处:可以在部署时灵活更换Connection实现;可以更好的屏蔽数据库的相关性。以下以oracle为例说明。 使用厂商DataSour...原创 2011-03-03 14:26:38 · 2621 阅读 · 0 评论 -
java.sql.Date与java.util.Date 异同
java.util.Date 包含日期和时间。 java.sql.Date 是 java.util.Date的子类,并且只包含日期,没有包含时间部分。 看下面 java.sql.Date中覆盖父类的toString()方法: public String toString() { int year = super.getYear() + 1900; i...原创 2011-02-23 17:13:10 · 166 阅读 · 0 评论 -
类的初始化顺序问题
一道面试题目,看代码: public class Testinitial{ public static void main(String[] args) { // 第一种情况 int a = Test2.a; // 第二种情况 // int a = Test2.b; System.out.println("main method"); }...原创 2011-02-23 16:10:38 · 92 阅读 · 0 评论 -
ReentrantReadWriteLock 与 synchronized 性能差别
synchronized 可以认为默任为当前对像加了一把ReentrantLock锁,所以,会出现一个线程读另一个线程不能进入的现像 。这样就造成不论读写,只要线程进入synchronized代码就互斥。 ReentrantReadWriteLock 其实是加了两把锁。写锁排斥读、写 ,读锁只排斥 写,所以能达到并发读的效果。克服了synchronized 读互斥的缺点...原创 2011-02-11 15:42:23 · 175 阅读 · 0 评论 -
JVM分代垃圾回收策略的基础概念
为什么要分代分代的垃圾回收策略,是基于这样一个事实:不同的对象的生命周期是不一样的。因此,不同生命周期的对象可以采取不同的收集方式,以便提高回收效率。在Java程序运行的过程中,会产生大量的对象,其中有些对象是与业务信息相关,比如Http请求中的Session对象、线程、Socket连接,这类对象跟业务直接挂钩,因此生命周期比较长。但是还有一些对象,主要是程序运行过程中生成的临时变量,...原创 2011-09-25 01:07:58 · 90 阅读 · 0 评论 -
JVM基础概念总结:数据类型、堆与栈
数据类型 Java虚拟机中,数据类型可以分为两类:基本类型和引用类型。 基本类型的变量保存原始值,即:他代表的值就是数值本身; 而引用类型的变量保存引用值。“引用值”代表了某个对象的引用,而不是对象本身,对象本身存放在这个引用值所表示的地址的位置。 基本类型包括:byte, short, int, long, char, float, double, Boolean, ...原创 2011-09-25 01:14:08 · 100 阅读 · 0 评论 -
JVM内存模型及垃圾收集策略解析
一 JVM内存模型1.1 Java栈Java栈是与每一个线程关联的,JVM在创建每一个线程的时候,会分配一定的栈空间给线程。它主要用来存储线程执行过程中的局部变量,方法的返回值,以及方法调用上下文。栈空间随着线程的终止而释放。StackOverflowError:如果在线程执行的过程中,栈空间不够用,那么JVM就会抛出此异常,这种情况一般是死递归造成的。1.2 堆Java中...原创 2011-09-25 01:56:21 · 119 阅读 · 0 评论 -
HashSet \LinkedHashSet\TreeSet 元素顺序
import java.util.Arrays;import java.util.HashSet;import java.util.LinkedHashSet;import java.util.SortedSet;import java.util.TreeSet;public class sdf{ public static void main(String[...原创 2011-02-23 13:36:03 · 150 阅读 · 0 评论 -
java基础知识回顾(1)float/double 与封装类型Float/Double
float/double 与封装类型Float/Double基本类型:float/double关于 java 的 float 和 double Java 语言支持两种基本的浮点类型: float 和 double 。java 的浮点类型都依据 IEEE 754 标准。IEEE 754 定义了32 位和 64 位双精度两种浮点二进制小数标准。 IEEE 754 用科学记数法...原创 2011-02-23 14:31:24 · 773 阅读 · 0 评论 -
java float double为什么精度会丢失
由于对float或double 的使用不当,可能会出现精度丢失的问题。问题大概情况可以通过如下代码理解: public class Num{ public static void main(String[] args) { float f = 20014999; double d = f; double d2 = 20014999; System.o...原创 2011-02-23 14:39:17 · 252 阅读 · 0 评论 -
Java数据类型
Java数据类型 JAVA语言中定义了8种基本的数据类型,来保存变量。与它的前辈C和C++语言一样,JAVA要求程序中的每一个变量都规定自己的类型。正因为如此,JAVA属于强类型语言,从而不同于JavaScript这样的弱类型脚本语言。下面我们来看看这8种类型: public class FloatDouble{ public static void main(String[]...原创 2011-02-23 15:04:51 · 88 阅读 · 0 评论 -
java clone方法使用详解
java clone方法使用出处:http://www.iteye.com/topic/182772 Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,特别是先学c、c++后学java的程序员。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。比如函数参数类型...原创 2011-02-23 15:39:13 · 119 阅读 · 0 评论 -
基本类型 加减运算 类型转换问题讨论
先来看下面的 代码: public class Test{ public static void main(String[] args) { short i ; i = i + 1; //编译错误 i += 1; //正确 byte j = 1; //正确 byte k = 2; byte l = j + k; //错误...原创 2011-03-09 14:56:14 · 157 阅读 · 0 评论