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
今天要在我的項目中要在原有的資料結構中添加一個欄位,最後決定使用對象序列化技術將對象傳過去,我們的對象是封裝在一個Map中的。我介紹的過程是根據我在使用過程中所使用的方法。
Time of Update: 2018-12-05
最近集團公司的軟體項目給我的啟發也多了一些,更讓我堅持原來的走單一路線的想法,要麼選擇足球隊,要麼選擇籃球隊,養2個隊伍太辛苦了。可能也是出於本人的眼光狹隘、目光短淺吧,下文供參考。 前些日子,南非世界盃看得倒是很爽的,其實我們開發軟體也有點兒這樣的感覺,做項目、競標、做軟體也類似打比賽。 1:養一個足球隊是否容易?雖然足球隊也並不像富士康一樣需要幾十萬人,但是培養一個良好的足球隊,甚至一個國家的能力也做不到,軟體Team
Time of Update: 2018-12-05
在 http://www.apache.org,下載commons-fileupload-1.2.1.jar包,並把這個包加到工程中,以下是記錄這個上傳組件的一些使用方法。 html測試頁面,實現上傳兩個檔案,並填寫四個參數。 <form action="../FileServlet" enctype="multipart/form-data" method="post" > <dt>本人名稱:</dt>
Time of Update: 2018-12-05
eclipse中如何寫一個測試私人方法的junit?假設類Summer定義如下:public class Summer{ private int methodone(String argsone){ //method code ....... return 4; }}測試如下:public class SummerTest extends TestCase { public void testMethodone(){ Object
Time of Update: 2018-12-05
package learn.thread;/** * 用Thread類來建立線程,start()方法(會自動調用run()方法)和run()方法, * 實現自己的線程要重寫run()方法, * @author whitetiger * */public class LearnOne {public static void main(String[] args) {Demo demo = new Demo();demo.start();
Time of Update: 2018-12-05
在java對XML進行處理時,讀取XML文檔,對其處理,這是我得一個執行個體代碼。 import java.io.FileInputStream; import javax.xml.parsers.*; import org.w3c.dom.*; /* * Created on 2004-6-2 *java讀取XML文檔 *利用DoM來讀取一個XML文檔的內容,並將其列印出來 */ public class TestXML { public static void main(String[]
Time of Update: 2018-12-05
Java線程:概念與原理 SCJP5學習筆記 一、作業系統中線程和進程的概念現在的作業系統是多任務作業系統。多線程是實現多任務的一種方式。進程是指一個記憶體中啟動並執行應用程式,每個進程都有自己獨立的一塊記憶體空間,一個進程中可以啟動多個線程。比如在Windows系統中,一個啟動並執行exe就是一個進程。 線程是指進程中的一個執行流程,一個進程中可以運行多個線程。比如java.exe進程中可以運行很多線程。線程總是屬於某個進程,進程中的多個線程共用進程的記憶體。 “同時”執行是人的感覺,線上程
Time of Update: 2018-12-05
只要有表格,就會有Microsoft Excel,用Microsoft Excel處理資料已成為不少人的習慣。Jakarta POI API就為Java程式員提供了一條存取Microsoft文檔格式的神奇之路,其中最成熟的就是能存取Microsoft Excel文檔的HSSF API。 本篇文章就舉例示範如何利用Java 建立和讀取Excel文檔,並設定儲存格的字型和格式。 為了保證樣本程式的運行,必須安裝Java 2 sdk1.4.0 和Jakarta POI,Jakarta
Time of Update: 2018-12-05
Java線程:線程棧模型與線程的變數 SCJP5學習筆記 要理解線程調度的原理,以及線程執行過程,必須理解線程棧模型。線程棧是指某時刻時記憶體中線程調度的棧資訊,當前調用的方法總是位於棧頂。線程棧的內容是隨著程式的運行動態變化的,因此研究線程棧必須選擇一個啟動並執行時刻(實際上指代碼運行到什麼地方)。 下面通過一個樣本性的代碼說明線程(調用)棧的變化過程。 這幅圖描述在代碼執行到兩個不同時刻1、2時候,虛擬機器線程調用棧。 當程式執行到t.start();時候,程式多出一個分支(增加了一個調用
Time of Update: 2018-12-05
線程的5個狀態可分為,分別是新、死、可運行、運行、阻塞狀態。可以用如下一幅圖表示: 1、 初生狀態:已建立線程對象,但沒有執行start()方法的線程;2、 可運行狀態:已執行start()方法,並滿足運行條件,等待CPU調度;3、 運行狀態:正在CPU上運行;4、 死亡狀態:線程運行結束,也就是run()方法運行結束;5、
Time of Update: 2018-12-05
Java Network Launching Protocol (JNLP,java網路載入協議)。jnlp是什嗎?是java提供的一種讓你可以通過瀏覽器直接執行java應用程式的途徑,它使你可以直接通過一個網頁上的url串連開啟一個java應用程式.好處就不用說了,如果你的java應用程式以jnlp 的方式發布,如果版本升級後,不需要再向所有使用者發布版本,只需要補救伺服器的版本,這就相當於讓java應用程式有了web應用的優點了.如何使用jnlp:1.把你的應用打包成一個可執行檔jar檔案,
Time of Update: 2018-12-05
在java開發的早期,重點被放在了用戶端開發。語言中對於applet和安全下載的支援對於全球資訊網(WWW)的發布看上去是個不錯的主意。但是現實是java最大的成功在於伺服器端,java的強大功能和適應性贏得了伺服器端開發人員的心。同時,用戶端的開發落後了。棘手的開發問題限制了applet的效用,開發人員被迫轉向基於瀏覽器的瘦用戶端。 Java Network Launching Protocol (JNLP,java網路載入協議) 承諾改變這個現狀。通過JCP(Java Community