Time of Update: 2018-12-05
大多數人認為,介面的意義在於頂替多重繼承。眾所周知Java沒有c++那樣多重繼承的機制,但是卻能夠實作多個介面。其實這樣做是很牽強的,介面和繼承是完全不同的東西,介面沒有能力代替多重繼承,也沒有這個義務。介面的作用,一言以蔽之,就是標誌類的類別(type of
Time of Update: 2018-12-05
最初Java是不支援對文字檔的處理的,為了彌補這個缺憾而引入了Reader和Writer兩個類。java.io下面有兩個抽象類別:InputStream和Reader InputStream是表示位元組輸入資料流的所有類的超類 Reader是用於讀取字元流的抽象類別InputStream提供的是位元組流的讀取,而非文本讀取,這是和Reader類的根本區別。即用Reader讀取出來的是char數組或者String
Time of Update: 2018-12-05
Java判斷一個字串中是否有中文字元有兩種方法,但是原理都一樣,就是通過Unicode編碼來判斷,因為中文在Unicode中的編碼區間為:0x4e00--0x9fbb第一種: String chineseStr = "中華人民公社"; char[] charArray = chineseStr.toCharArray(); for(int i=0;i<charArray.length;i++){ if ((charArray[i] >= 0x4e00)&&
Time of Update: 2018-12-05
突然想準確的測試一下Java代碼的執行時間,在網上找了一會。發現基本有以下兩種方法:第一種是以毫秒為單位計算的。Java代碼
Time of Update: 2018-12-05
設定檔是應用系統中不可缺少的,可以增加程式的靈活性.java.util.Properties是從jdk1.2就有的類,一直到現在都支援load()方法,jdk1.4以後save(output,string)變成了store(output,string) 讀取設定檔, xx.properties放在webroot/WEB-INF/classes/目錄下 首先將設定檔轉換成InputStream,有兩種方式,原理一樣,都是通過類載入器得到資源: (1)InputStream
Time of Update: 2018-12-05
在java中數組被看成是一個對象在定義數組時,有兩種定義方法:int[] a 和int a[];第二種是C/C++對數組定義方式,對於JAVA建議採用第一種定義方式。總的原則:任何對象在被調用之前必須先被初始化!1 一維數組的定義 //定義包含三個元素的一維數組 //方法1,先new對象,然後再初始化每個元素 int[] a = new int[3]; a[0] = 1; a[1] = 2; a[2] = 3; 方法一要注意的是不能這樣寫: int[] a = new int[3
Time of Update: 2018-12-05
拷貝檔案夾的代碼: public boolean copy(String file1,String file2) { File in=new File(file1); File out=new File(file2); if(!in.exists()){ return false; }
Time of Update: 2018-12-05
1、如果需要用很多個物件時可以使用Cache,經常寫Java的人可能會使用HashMap去實現Cache,但當Key是Integer的值時,Android為我們定義了一個更有效率的一個類:SparseArray類,它具有比HashMap更高的效率。2、不同的API版本針對不同的功能已經做了最佳化,有些函數被棄用,啟用新的調用函數,因此,在實現不同的API版本的時候,可針對不同的API進行不同程度的最佳化,個人覺得這種最佳化成本高,收益小。如:在HONEYCOMB中,sparseArray進行了最
Time of Update: 2018-12-05
05-28 17:18:34.086: E/AndroidRuntime(973): Caused by: java.lang.IllegalArgumentException: The observer is null.05-28 17:18:34.086: E/AndroidRuntime(973): at android.database.Observable.unregisterObserver(Observable.java:59)05-28 17:18:34.086:
Time of Update: 2018-12-05
大家都知道Java中數組的聲明、定義和初始化是這樣一氣呵成的(動態初始化): int mm[]; mm=new int[4]; mm[0]=1; mm[1]=2; mm[2]=4; mm[3]=5;當然也可以一次性解決(靜態初始化): int mm[]={ 1, 2, 4, 5 };
Time of Update: 2018-12-05
import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java.util.Date;/** * * @author Robot * */public class test {public static Date getDateByString(String time) {Date date = null;if(time == null) return
Time of Update: 2018-12-05
用Applet寫的java小程式如果沒有經過簽名,那麼訪問用戶端程式下載後會受到安全限制;怎樣對java小程式簽名受到很多人的關注,網上也有這些方面可供參考的文檔,但都不是完整,在這裡我給出一份可具體操作的文檔,希望能給大家一些協助。 情境:test.jar:內含待簽名的java小程式 結果:簽名後,用戶端能自動下載java小程式,且java小程式能訪問用戶端的任何資源 步驟: (1)將java小程式打包 jar cvf test.jar
Time of Update: 2018-12-05
呵呵,題目,內容確實有些老,技術也沒有什麼新東西,都是自己的平時的一些筆記的內容。。。。一個朋友要,想來其實這些東西還是很有用。。就帖出來勒。。。 有三種辦法第一種是用access的JDBC驅動程式,到http://industry.java.sun.com/products/jdbc/drivers這個網站上尋找並下在access的jdbc驅動程式。第二個辦法是你用下面的代碼試試con = DriverManager.getConnection("jdbc:odbc:Driver=
Time of Update: 2018-12-05
Java EE5作為新一代Java企業開發平台的規範,從開始設計就引來了整個java開發社區的注目,引起無數的辯論和帶來了眾多的期盼。Java EE5作為J2EE平台誕生幾近6年後的第4代規範重點關注的是目前java開發的幾個熱點:開發效率,運行效率和公司專屬應用程式整合。目標也是讓J2EE開發簡單,簡單再簡單。那我們就看看J2EE5規範到底有什麼,是否真的能給開發人員/企業帶來真正的實惠?Java EE5規範是一個所謂的雨傘規範(Umbrella),在其下是一系列的子規範,主要包括: EJB
Time of Update: 2018-12-05
昨天去換了本《java程式設計教程(第五版)》(DEITEL父子編著),當時看了一下感覺還不錯,都第五版了還能錯了,所以也沒仔細再選,晚上有空了再看時才發現這部書譯者竟然達到了24人,光姓施的就六個,再加上校對的其他的人,姓施的達到了10個人左右。很明顯是一大家子了,其中也有6個還是4個姓柳的,光瞅這樣的陣容讓我對它們的翻譯品質就不敢抱太大的希望了,而且此書在國內也是第一版第一次印刷,只有4000冊,當然書的內容我看還是挺豐富的。各種編程建議和提示以及數量豐富的例子都看起來滿不錯的,但心裡總擔心
Time of Update: 2018-12-05
同事給我了個“Thinking in Java,
Time of Update: 2018-12-05
你得明白,程式開發就像人的學習一樣,是一個漸進的過程。不論你作過多少分析,不實際做項目的話,還是得不到答案。如果你能摒棄像建玻璃摩天樓那樣畢其功於一役的開發方式,而採用類似生物進化的,讓那個項目逐步的“增長”的開發方式,那麼你就會獲得更大的成功——以及更多的及時反饋。把衍生類別傳給基類就是沿著繼承圖往上送,因此被稱為“上傳(upcasting)”。上傳總是安全的,因為你是把一個較具體的類型轉換成較為一般的類型。也就是說衍生類別是基類的超集(superset)。合成還是繼承,再探討:在面相對象的
Time of Update: 2018-12-05
測試對象的相等性:雖然==和!=能用於所有對象,但得出的結果卻未必是你想要的。除了未經處理資料類型外,==和!=用在兩個對象間都比較的是兩個對象的reference,而我們一般要比較的卻是對象的內容,我們可以使用equals()方法,但該方法在object基類預設行為還是比較對象的reference,所以在比較自己建立的類的對象時,應該自己實現該方法。好在絕大多數java類庫的類都實現了該方法,我們只管用就好了。短接,位元運算符,移位元運算符,三元運算子( ?
Time of Update: 2018-12-05
隱藏實現 & 複用類存取控制符, import,
Time of Update: 2018-12-05
hiding the implementation這句話講得很好:In any relationship, it's important to have boundaries that are respected by all parties involved. 不管你們是什麼關係,有一個彼此尊重的界限是很重要的。#----CLASSPATH(要大寫,最好加上目前的目錄.)