原创 java泛型、泛型的內部原理:類型擦除以及類型擦除帶來的問題

原始文章:http://blog.csdn.net/lonelyroamer/article/details/7868820 一、Java泛型的實現方法:類型擦除 前面已經說了,Java的泛型是僞泛型。爲什麼說Java的泛型是僞泛

原创 ubuntu 14.04 LTS 安裝jdk1.8

下載jdk-8u25-linux-i586.tar.gz oracle下載:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.

原创 深入Java虛擬機:Javac編譯與JIT編譯

編譯過程     不論是物理機還是虛擬機,大部分的程序代碼從開始編譯到最終轉化成物理機的目標代碼或虛擬機能執行的指令集之前,都會按照如下圖所示的各個步驟進行:          其中綠色的模塊可以選擇性實現。很容易看出,上圖中間的那條分

原创 JDK7的動態類型,關於java.lang.invoke包的解釋

來源:深入理解Java 7:核心技術與最佳實踐 方法句柄(method handle)是JSR 292中引入的一個重要概念,它是對Java中方法、構造方法和域的一個強類型的可執行的引用。這也是句柄這個詞的含義所在。通過方法句柄可以直接調用

原创 getParameter和getAttribute的區別

HttpServletRequest類既有getAttribute()方法,也由getParameter()方法,這兩個方法有以下區別: (1)HttpServletRequest類有setAttribute()方法,而沒有setPa

原创 Dom4j解析XML文件

   原文:http://blog.csdn.net/redarmy_chen/article/details/12969219 dom4j是一個Java的XML API,類似於jdom,用來讀寫XML文件的。dom4j是一個非常非常優秀

原创 對象和引用的區別與聯繫

爲便於說明,我們先定義一個簡單的類: class Vehicle { int passengers;        int fuelcap; int

原创 super的正確用法

super的含義 super並沒有代表超類的一個引用的能力(但是,this可以作爲隱含的引用,所以可以System.out.println(this);),只是代表調用父類的方法或屬性而已。 反例:如果super是超類的引用,那麼就

原创 類的加載順序

類加載的順序:1.加載靜態成員/代碼塊:先遞歸地加載父類的靜態成員/代碼塊(Object的最先);再依次加載到本類的靜態成員。同一個類裏的靜態成員/代碼塊,按寫代碼的順序加載(靜態代碼塊和靜態成員誰在前面就先加載誰)。如果其間調用靜態方法

原创 GET POST 區別詳解

1、Get是用來從服務器上獲得數據,而Post是用來向服務器上傳遞數據。 2、Get將表單中數據的按照variable=value的形式,添加到action所指向的URL後面,並且兩者使用“?”連接,而各個變量之間使用“&”連接;Post

原创 getRealPath與getContextPath說明

getServletContext()      一個servlet可以使用getServletContext()方法得到web應用的servletContext     request.getRealPath(java.lan

原创 深入淺出URL編碼

一、問題:         編碼問題是JAVA初學者在web開發過程中經常會遇到問題,網上也有大量相關的文章介紹,但其中很多文章並沒有對URL中使用了中文等非ASCII的字 符造成服務器後臺程序解析出現亂碼的問題作出準確的解釋和說明。本

原创 Java正則表達式與replaceAll()與replace()的區別

1:Java中反斜槓“\"是一個特殊字符, 表示轉義. 比如你想輸出兩個引號: " ", 那麼你在字符串中就需要這樣寫: \" \", 因爲" 在java中是特殊字符,需要被轉義才行. 同樣, 如果你想輸出一個 \, 那麼你需要在字符串中

原创 java動態代理解析

動態代理實現了當原始類和接口未知的情況下,就確定代理類的代理行爲,當代理類與原始類脫離實際聯繫時,就可以領會運用與不同的場合。 部分參考《http://www.cnblogs.com/xiaoluo501395377/p/3383130.

原创 與的區別

可能出現在class文件中的兩種編譯器產生的方法是:實例初始化方法(名爲<init>)和類與接口初始化方法(名爲<clinit>)。   這兩種方法有什麼區別呢? 首先:這兩個方法一個是虛擬機在裝載一個類初始化的時候調用的(clinit)