原创 Java基礎知識整理之異常篇

    直接上代碼: class ExceptionA extends Exception{ //繼承自Exception類,爲受檢查的異常 } class ExceptionB extends RuntimeException{

原创 Java數組

1.Java的數組是靜態的,即當數組被初始化之後,該數組的長度是不可變的。 2.Java數組的初始化有以下兩種方式:     靜態初始化:由程序員顯式指定每個數組元素的初始值,系統自動決定數組的長度。                 

原创 ThreadLocal變量

    ThreadLocal很容易讓人望文生義,想當然地認爲是一個“本地線程”。其實,ThreadLocal並不是一個Thread,而是Thread的局部變量。當使用ThreadLocal維護變量時,ThreadLocal爲每個使用該變

原创 JAVA虛擬機

1.Java虛擬機的生命週期     每個Java程序都運行於某個具體的Java虛擬機實現的實例上。當啓動一個Java程序時,一個虛擬機實例就誕生了。當該程序關閉時,虛擬機實例也隨之消亡。如果在同一臺計算機上同時運行三個Java程序,將得

原创 Java泛型的類型擦除

一、泛型簡介     所謂的泛型,即將類型參數化。主要思想是將算法和數據結構完全分離開,使得一次定義的算法能夠提供多種數據結構使用,從而實現高度可重用的開發。在Java中,可以定義泛型類,泛型接口以及泛型方法。      C++和Jav

原创 Java I/O 序列化機制

    對象序列化的目標是將對象保存到磁盤中,或者通過網絡進行傳輸。序列化機制允許把內存中的Java對象轉換成平臺無關的二進制流,並在需要的時候恢復成原來的Java對象。序列化是保持對象輕量級持久的方式。爲了讓某個類是可序列化的,該類必

原创 Properties類

    包:java.util        public class Propertities extends Hashtable     Properties 類表示了一個持久的屬性集。Properties 可保存在流中或從流中加載。

原创 Java IO類圖

原创 Java多線程 類庫中的構件(一)

1.CountDownLatch   同步輔助類,在完成一組正在其他線程中執行的操作之前,它允許一個或多個線程一直等待。用給定的計數初始化CountDownLatch。由於調用了 countDown() 方法,所以在當前計數到達零之前,a

原创 Java多線程

1.Runnable接口與Callable接口的區別     Runnable接口中的方法簽名爲:public void run();該方法不能聲明拋出受檢查的異常,但在方法體內可以捕獲並處理異常;     Callable<V>接口中的

原创 Java多線程類庫中的組件(二)

1.Semaphore   一個計數信號量,允許N個任務同時訪問一個資源,而concurrent.locks或內建的synchronized鎖,任何時候只允許一個任務訪問一項資源;信號量維護了一個許可集。如有必要,在許可可用前會阻塞每一個

原创 JVM 垃圾回收算法

1.根搜索算法     JVM使用根搜索算法判斷一個對象是否可以回收,而不是使用所謂的“引用計數”算法。引用計數算法給每個對象添加一個引用計數器,每當有一個地方引用到該對象,則計數值加1;當引用失效時,計數值減1;任何時候只要對應計數值爲

原创 Android移動存儲方案

    在Android系統中提供了多種存儲技術,下面分別作簡要的介紹。 1.最簡單的存儲方式SharedPreferences     SharedPreferences可以將數據保存在應用軟件的私有存儲區,具體位置是在/data/da

原创 對象與內存控制

1.Class文件     Java class文件是對Java程序二進制文件格式的精確定義,每一個java class文件都對一個類或者一個接口作出了全面的描述。當每一次使用類時,JVM會檢查對應的class文件是否已經加載,如果未加載