Time of Update: 2017-01-19
首先看這兩類都實現List介面,而List介面一共有三個實作類別,分別是ArrayList、Vector和LinkedList。List用於存放多個元素,能夠維護元素的次序,並且允許元素的重複。3個具體實作類別的相關區別如下:1.ArrayList是最常用的List實作類別,內部是通過數組實現的,它允許對元素進行快速隨機訪問。數組的缺點是每個元素之間不能有間隔,當數組大小不滿足時需要增加儲存能力,就要講已經有數組的資料複製到新的儲存空間中。當從ArrayList的中間位置插入或者刪除元素時,需要
Time of Update: 2017-01-19
1、String類、StringBuilder類、StringBuffer類String對象是不可變的,重載了運算子+,於是String
Time of Update: 2017-01-19
Java容器類包含List、ArrayList、Vector及map、HashTable、HashMap ArrayList和HashMap是非同步,Vector和HashTable是同步的,所以Vector和HashTable是安全執行緒的,而ArrayList和HashMap並不是安全執行緒的。因為同步需要花費機器時間,所以Vector和HashTable的執行效率要低於ArrayList和HashMap。Collection├List  
Time of Update: 2017-01-19
主要相同點:Lock能完成Synchronized所實現的所有功能。主要不同點:Lock有比Synchronized更精確的線程予以和更好的效能。Synchronized會自動釋放鎖,但是Lock一定要求程式員手工釋放,並且必須在finally從句中釋放。synchronized 修飾方法時 表示同一個對象在不同的線程中 表現為同步隊列如果執行個體化不同的對象 那麼synchronized就不會出現同步效果了。1.對象的鎖 所有對象都自動含有單一的鎖。
Time of Update: 2017-01-19
wait(),notify(),notifyAll()不屬於Thread類,而是屬於Object基礎類,也就是說每個對象都有wait(),notify(),notifyAll()的功能.因為每個對象都有鎖,鎖是每個對象的基礎,當然操作鎖的方法也是最基礎了。wait導致當前的線程等待,直到其他線程調用此對象的 notify() 方法或 notifyAll() 方法,或被其他線程中斷。wait只能由持有對像鎖的線程來調用。notify喚醒在此對象監視器上等待的單個線程。如果所有線程都在此對象上等待,
Time of Update: 2017-01-19
1.垃圾收集演算法的核心思想Java語言建立了垃圾收集機制,用以跟蹤正在使用的對象和發現並回收不再使用(引用)的對象。該機制可以有效防範動態記憶體分配中可能發生的兩個危險:因記憶體垃圾過多而引發的記憶體耗盡,以及不恰當的記憶體釋放所造成的記憶體非法引用。垃圾收集演算法的核心思想是:對虛擬機器可用記憶體空間,即堆空間中的對象進行識別,如果對象正在被引用,那麼稱其為存活對象,反之,如果對象不再被引用,則為垃圾對象,可以回收其佔據的空間,用於再分配。垃圾收集演算法的選擇和垃圾收集系統參數的合理調節直接
Time of Update: 2017-01-19
java的比較子有兩類,分別是Comparable介面和Comparator介面。在為對象數組進行排序時,比較子的作用非常明顯,首先來講解Comparable介面。讓需要進行排序的對象實現Comparable介面,重寫其中的compareTo(T o)方法,在其中定義定序,那麼就可以直接調用java.util.Arrays.sort()來排序對象數組,執行個體如下:複製代碼 代碼如下:class Student implements
Time of Update: 2017-01-19
原理是使用LinkedHashMap來實現,當緩衝超過大小時,將會刪除最老的一個元組。實現代碼如下所示複製代碼 代碼如下:import java.util.LinkedHashMap;import java.util.Map;public class LRUCache { public static class CachedData { private Object data = null; private long time =
Time of Update: 2017-01-19
代碼如下所示:複製代碼 代碼如下:import java.io.IOException;import java.io.InputStream;import java.net.URL;import javax.servlet.ServletConfig;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServlet;import
Time of Update: 2017-01-19
複製代碼 代碼如下:public String reverse(char[] value){ for (int i = (value.length - 1) >> 1; i >= 0; i--){ char temp = value[i]; &
Time of Update: 2017-01-19
代碼如下所示:複製代碼 代碼如下:/***ConnectionUtil .java***/package com.cai.jdbc;import java.sql.Connection; import java.sql.DriverManager;import java.util.Properties ;public class ConnectionUtil { /** * 1 *在方法中固化串連參數 * @return
Time of Update: 2017-01-19
複製代碼 代碼如下:import java.util.ArrayList;import java.util.List;public class Test2 { /** * @param args */ public static void main(String[] args) { String src = "A B C D E B C"; //替換掉空格 src = src.replaceAll(" ", "")
Time of Update: 2017-01-19
常規調用方式:(這個肯定會彈出cmd視窗)複製代碼 代碼如下:Runtime.getRuntime().exec("cmd.exe /C start D:\\test.bat");解決不彈框只需要“start”後面加一個參數“/b”就行: 複製代碼 代碼如下:Runtime.getRuntime().exec("cmd.exe /C start
Time of Update: 2017-01-19
1、public String(char[] c,begin,length).從字元數組c的下標begin處開始,將長度為length的字元數群組轉換為字串。begin與length可以省略,即將字元數組c轉換為字串。另:字元數組可改為位元組數組byte[] b.char[] c=new char[]{'j','y','6','a','4','t','9'}; String s1=new String(c); String s=new String(c,2,3);
Time of Update: 2017-01-19
一、聲明局部變數是的一些特性和規則(1)聲明的局部變數是不會被預設初始化的,成員變數則是會被預設初始化的。例如:複製代碼 代碼如下:class Demo { public static void main(String[] args) { String s;
Time of Update: 2017-01-19
1.首先定義一個容器Collection介面.複製代碼 代碼如下:package com.njupt.zhb.learn.iterator;public interface Collection { void add(Object o); int size(); Iterator iterator();}2.定義一個Iterator迭代器的介面複製代碼 代碼如下:package com.njupt.zhb.learn.iterator;public
Time of Update: 2017-01-19
JDOM是一個開源項目,它基於樹型結構,利用純JAVA的技術對XML文檔實現解析、產生、序列化以及多種操作。JDOM直接為JAVA編程服務。它利用更為強有力的JAVA語言的諸多特性(方法重載、集合概念以及映射),把SAX和DOM的功能有效地結合起來。JDOM的官方地址:http://www.jdom.org/1.首先建立一個介面和2個類,為後續做準備[Moveable.java]複製代碼 代碼如下:package com.njupt.zhb.test;public interface
Time of Update: 2017-01-19
格式化日期 String-->Date 或者 Data-->StringSimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); Date date = sdf.parse("2009-11-04");//String-->Date String sdate = sdf.format(date );// Data-->String =======================================
Time of Update: 2017-01-19
一、擷取目前時間, 格式為: yyyy-mm-dd hh-mm-ss DateFormat.getDateTimeInstance(2, 2, Locale.CHINESE).format(new java.util.Date());二、擷取目前時間, 格式為: yyyy年mm月dd日
Time of Update: 2017-01-19
繼承類的構建過程是向外擴散的,子類初始化了,父類一定也初始化了複製代碼 代碼如下:class Art{ Art(){ System.out.println("Art"); }}class Drawing extends Art{ Drawing(){ System.out.println("Drawing"); }}public class Cartoon extends Drawing