Time of Update: 2018-12-05
1、不可以用一個本地類型(如int float)來替換泛型.比如List<Integer>不能用List<int>型式2、運行時類型檢查,不同類型的泛型類是等價的(Pair<String>與Pair<Employee>是屬於同一個類型 Pair),這一點要特別注意:即如果a
Time of Update: 2018-12-05
一,run()和start() 這兩個方法應該都比較熟悉,把需要平行處理的代碼放在run()方法中,start()方法啟動線程將自動調用 run()方法,這是由Java的記憶體機制規定的.並且run()方法必須是public存取權限,傳回值類型為void.二,關鍵字Synchronized
Time of Update: 2018-12-05
公民身份號碼是特徵組合碼,由十七位元字本體碼和一位元字校正碼組成.排列順序從左至右依次為:六位元字地址碼,八位元字出生日期碼,三位元字順序碼和一位元字校正碼。
Time of Update: 2018-12-05
■Java中對象的生命週期分析 Java對象的生命週期大致包括三個階段:對象的建立,對象的使用,對象的清除.因此,對 象的生命週期長度可用如下的運算式表示:T = T1 + T2 +T3.其中T1表示對象的建立時間,T2表示對象的使用時間,而T3則表示其清除時間.由此,我們可以看出,只有T2是真正有效時間,而T1,T3則 是對象本身的開銷.下面再看看T1,T3在對象的整個生命週期中所佔的比例. 我們知道,Java對象是通過建構函式來建立的,在這一
Time of Update: 2018-12-05
/** * 讀取txt檔案 */ public void readerTXT(){ List<String> emailList=new ArrayList<String>(); List<String> emailLocationList=new ArrayList<String>(); File file=new File("C://Documents and
Time of Update: 2018-12-05
1.設定Cookie Cookie cookie = new Cookie("key", "value"); cookie.setMaxAge(60); 設定60秒生存期,如果設定為負值的話,則為瀏覽器進程Cookie(記憶體中儲存),關閉瀏覽器就失效。 cookie.setPath("/test/test2"); 設定Cookie路徑,不設定的話為當前路徑(對於Servlet來說為request.getContextPath() +
Time of Update: 2018-12-05
在多線程的情況下,由於同一進程的多個線程共用同一片儲存空間,在帶來方便的同時,也帶來了存取違規這個嚴重的問題。Java語言提供了專門機制以解決這種衝突,有效避免了同一個資料對象被多個線程同時訪問。 wait與notify是java同步機制中重要的組成部分。結合與synchronized關鍵字使用,可以建立很多優秀的同步模型。 synchronized(this){ }等價於publicsynchronized void
Time of Update: 2018-12-05
Object類是所有類的超類,也就是說,Java中的每一個類都是由Object擴充而來的.因而每當你建立一個對象,它都將擁有Object類中的全部方法.讓我們先來看看java.lang.Object的中的主要方法有哪些:public class Object{//公用建構函式public Object();//公用執行個體方法public boolean equals(Object obj);public native int hashCode();public final native
Time of Update: 2018-12-05
Java對多線程的支援與同步機制似乎使用了synchronized關鍵字就可以輕鬆地解決多線程共用資料同步問題.到底如何?――還得對synchronized關鍵字的作用進行深入瞭解才可定論.總的說來,synchronized關鍵字可以作為函數的修飾符,也可作為函數內的語句,也就是平時說的同步方法和同步語句塊.如果再細的分類,synchronized可作用於instance變數,object reference(對象引用),static函數和class
Time of Update: 2018-12-05
目前整個開發社區對AOP(Aspect OrientedPrograming)推崇備至,也湧現出大量支援AOP的優秀Framework,--Spring, JAC, Jboss AOP等等。AOP似乎一時之間成了潮流。Java初學者不禁要發出感慨,OOP還沒有學通呢,又來AOP。本文不是要在理論上具體闡述何為AOP,為何要進行AOP . 要詳細瞭解學習AOP可以到它老家http://aosd.net去瞧瞧。這裡只是意圖通過一個簡單的例子向初學者展示一下如何來進行AOP.
Time of Update: 2018-12-05
在目前的Java開發包中包含了對動態代理的支援,但是其實現只支援對介面的的實現。 其實現主要通過是java.lang.reflect.Proxy類和java.lang.reflect.InvocationHandler介面。
Time of Update: 2018-12-05
1.基本概念的理解 絕對路徑:絕對路徑就是你的首頁上的檔案或目錄在硬碟上真正的路徑,(URL和實體路徑)例如:C:xyz est.txt 代表了test.txt檔案的絕對路徑.http://www.sun.com/index.htm也代表了一個URL絕對路徑. 相對路徑:相對與某個基準目錄的路徑.包含Web的相對路徑(HTML中的相對目錄),例如:在Servlet中,"/"代表Web應用的跟目錄.和實體路徑的相對錶示.例如:"./"
Time of Update: 2018-12-05
對象一共有六種狀態: 強引用有三種, 可觸及的:從根節點出發可到達該對象可複活的: 已經沒有對象引用它了,但可能從finalize()終結函數中調用使其複活不可觸及的: 沒有其他對象引用,也不會因為終結函數複活 三個引用對象,軟引用弱引用影子引用引用對象指向目標對象。強引用的目標對象不會被GC回收,弱引用並不禁止目標對象被回收。這裡的強弱是正對目標對象來說的。
Time of Update: 2018-12-05
Synchronized MethodsThe Java programming language provides two basic synchronization idioms:synchronized methods andsynchronized statements. The more complex of the two, synchronized statements, are described in the next section. This section is
Time of Update: 2018-12-05
增強for 迴圈(enhanced for loop) 所謂“增強for 迴圈”,主要也是針對容器的。使用該項特性時,開發人員可以將“利用iterator 遍曆容器”的邏輯交給編譯器來處理。例如下列代碼: void cancelAll(Collection c) { for (Iterator i = c.iterator(); i.hasNext(); ) { TimerTask tt = (TimerTask) i.next(); tt.cancel(); } } 可以用增強for
Time of Update: 2018-12-05
Java Enum 學習1. 關於Java Enum:學過C/C++等語言的人,應該都對Enum類型略知一二。Enum一般用來表示一組相同類型的常量。如性別、日期、月份、顏色等。對這些屬性用常量的好處是顯而易見的,不僅可以保證單例,且比較時候可以用”==”來替換equals。是一種好的習慣。JDK1.5之前沒有Enum這個類型,那時候一般用介面常量來替代。有了JavaEnum之後,可以更貼近的表示這種常量。2. 如何使用Java
Time of Update: 2018-12-05
Java、Android開發中精確測量代碼已耗用時間: long startTime = System.nanoTime(); //開始時間//// 這裡是你要測量的代碼//long consumingTime = System.nanoTime() – startTime; //消耗時間consumingTime就是你所測試的代碼的執行時間,你可以通過如下的Java輸出命令來輸出這個值
Time of Update: 2018-12-05
最近在準備找工作的事情,就複習了一下java。翻了一下書和網上的教材,發現雖然很多書是用java講資料結構的,但是側重於將資料結構本身的知識,利用java本身的類庫來實現資料結構的系統性的講解少之又少,所以在此做一下總結,方便各位正在準備工作的和用java實現資料結構的朋友們。附:代碼下載:http://download.csdn.net/detail/sunnyskyliu/4754827棧:void m_stack(){//StackStack<String> st=new
Time of Update: 2018-12-05
最近感想頗多,有時候客戶、業務的關係,非要強迫我走Java的路線一樣,我始終放棄了換技術方向的念頭,堅持.NET方向。 從公司的角度出發: 1. 公司往往競標參與項目時,客戶會指定用Java或者.NET做,難免會碰上經濟效益還可以的Java的項目,你不做吧,也不太可能。 2. 招聘人才時,也往往碰上有些不錯的人才,你無法要求他們必須是.NET方向的人才或者Java方向的人才,這樣招聘人員的範圍被限制了,而且有些優秀的人才由於方向不一致不能招聘。 3.
Time of Update: 2018-12-05
最近集團公司的軟體項目給我的啟發也多了一些,更讓我堅持原來的走單一路線的想法,要麼選擇足球隊,要麼選擇籃球隊,養2個隊伍太辛苦了。可能也是出於本人的眼光狹隘、目光短淺吧,下文供參考。 前些日子,南非世界盃看得倒是很爽的,其實我們開發軟體也有點兒這樣的感覺,做項目、競標、做軟體也類似打比賽。 1:養一個足球隊是否容易?雖然足球隊也並不像富士康一樣需要幾十萬人,但是培養一個良好的足球隊,甚至一個國家的能力也做不到,軟體Team