Time of Update: 2018-12-03
基於java的InputStream.read(byte[] b,int off,int len)演算法學習public int read(byte[] b, int off, int len) throws IOException將輸入資料流中最多 len 個資料位元組讀入位元組數組。嘗試讀取多達 len
Time of Update: 2018-12-03
&和&&都表示"與"&: 邏輯運算子,又是位元運算符(使用較少)。當&作為邏輯運算子時屬於非短路型。&&: 邏輯運算子。&&只是短路型邏輯運算子。相同點:&和&&都可以用作邏輯與的運算子,表示邏輯與(and),當運算子兩邊的運算式的結果都為true,整個運
Time of Update: 2018-12-03
四. 利用Ant構建和部署Java工程Ant可以代替使用javac、java和jar等命令來執行java操作,從而達到輕鬆的構建和部署Java工程的目的。下面來看幾個知識點。1. 利用Ant的javac任務來編譯java程式Ant的javac任務用於實現編譯Java程式的功能。下面來看一個簡單的例子:首先我們建立名為antstudy的Java工程,建立src目錄為原始碼目錄,在src目錄下建立HelloWorld.java這個類檔案。該類檔案的內容如下: publiccla
Time of Update: 2018-12-03
java讀取中文檔案java中讀取中文檔案經常出現亂碼,是因為java編碼的問題,以下是一個簡單的類,實現讀取中文。 在用inputstream讀取的時候,最好是一次讀取多個位元組,這樣節io操作,提高速度。 package wh;import java.io.BufferedReader;import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import
Time of Update: 2018-12-03
以下文字轉自:桔子園 http://www.blogjava.net/orangelizq/archive/2007/10/17/153573.html 現在Clone已經不是一個新鮮詞語了,伴隨著“多莉”的產生這個詞語確實很“火”過一陣子,在java中也有這麼一個概念,它可以讓我們很方便的“製造”出一個對象的副本來,下面來具體看看java中的Clone機制是如何工作的? 1. Clone&Copy 假設現在有一個Employee對象,Employee
Time of Update: 2018-12-03
關於JAVA中參數傳遞問題有兩種,一種是按值傳遞(如果是基本類型),另一種是按引用傳遞(如果是對象). 首先以兩個例子開始:1)public class Test2 { public static void main (String [] args) { StringBuffer a = new StringBuffer ("A"); StringBuffer b = new StringBuffer ("B"); operate (a,b);
Time of Update: 2018-12-03
Java中的類反射機制 一、反射的概念 :反射的概念是由Smith在1982年首次提出的,主要是指程式可以訪問、檢測和修改它本身狀態或行為的一種能力。這一概念的提出很快引發了電腦科學領域關於應用反射性的研究。它首先被程式語言的設計領域所採用,並在Lisp和物件導向方面取得了成績。其中LEAD/LEAD++ 、OpenC++ 、MetaXa和OpenJava等就是基於反射機制的語言。最近,反射機制也被應用到了視窗系統、作業系統和檔案系統中。
Time of Update: 2018-12-03
得到filesystem的執行個體 有兩個靜態方法可以得到filesystem介面的執行個體 public static FileSystem get(Configuration conf) throws IOException public static FileSystem get(URI uri, Configuration conf) throws
Time of Update: 2018-12-03
什麼是序列化java中的序列化(serialization)機制能夠將一個執行個體對象的狀態資訊寫入到一個位元組流中,使其可以通過socket進行傳輸、或者持久化儲存到資料庫或檔案系統中;然後在需要的時候,可以根據位元組流中的資訊來重構一個相同的對象。序列化機制在java中有著廣泛的應用,EJB、
Time of Update: 2018-12-03
http://www.ibm.com/developerworks/cn/java/j-zhanghz/層級: 初級矚 張黃 (zhanghuangzhu@gmail.com), 軟體工程師2006 年 1 月 18
Time of Update: 2018-12-03
講到Java多線程,大多數人腦海中跳出來的是Thread、Runnable、synchronized……這些是最基本的東西,雖然已經足夠強大,但想要用好還真不容易。從JDK1.5開始,增加了java.util.concurrent包,它的引入大大簡化了多線程程式的開發(要感謝一下大牛Doug
Time of Update: 2018-12-03
java中,大家都知道要實現序列化的類必須先實現Serializable介面,這句話我原以為就這麼簡單,然而前幾天我寫程式的時候才發現裡面還有文章,其實一個類要實現序列化,不但這個類要實現Serializable介面外,這個類裡面的成員屬性也要實現Serializable介面才能把這個類的成員寫進檔案裡,舉個例子:class House implements Serializable{ private Table; private Chair;}class
Time of Update: 2018-12-03
今天想將int 轉String 位元不夠前面補零,在本來想看看有沒有現成的API的,結果搜出來的大多數下面這個public static String addZeroForNum(String str,int strLength) { int strLen =str.length(); if (strLen <strLength) { while (strLen< strLength) { StringBuffersb = new StringBuffer();
Time of Update: 2018-12-03
二. Ant的關鍵元素Ant的構件檔案是基於XML編寫的,預設名稱為build.xml。為了更清楚的瞭解Ant,在這裡編寫一個簡單的Ant程式,用來展現Ant的功能,讓讀者對Ant有一個初步的瞭解。首先在E盤下建立一個build.xml檔案,內容如下:<?xml version="1.0"?><project name="helloWorld"> <target name="sayHelloWorld"> <echo
Time of Update: 2018-12-03
三. Ant的常用任務在Ant工具中每一個任務封裝了具體要執行的功能,是Ant工具的基本執行單位。在本小節中,主要引導讀者來看下Ant的常用任務及其使用舉例。1. copy任務該任務主要用來對檔案和目錄的複製功能。舉例如下:Eg1.複製單個檔案:<copy file="file.txt" tofile="copy.txt"/>Eg2.對檔案目錄進行複製: <copy todir="../newdir/dest_dir">
Time of Update: 2018-12-03
join 可以安排先後順序了.如果要先完成t1, 再運行t2, 最近運行t3,就可以這樣了t1.start();t1.join();t2.start();t2.join();t3.start() JDK是這樣說的:Waits at most millis milliseconds for this thread to die. A timeout of 0 means to wait forever.等待一段時間直到這個線程死亡 public class ThreadTest
Time of Update: 2018-12-03
泛型要知道Class的類型。但是直接寫成T.class顯然是不行的。從網上查了不少資料,結果只有一個,由於Java的泛型實現使用了“擦拭法”(具體細節沒深究,呵呵),導致Java的泛型不能直接擷取到自身的聲明的泛型型別。不過從江南白衣的blog文章裡搜到了有用的東西:使用反射來獲得“T.class”。原文地址:http://www.blogjava.net/calvin/archive/2009/12/10/43830.html主要用到的是這麼一句: Class <T>
Time of Update: 2018-12-03
以前一直以為線程的"中斷"就是讓線程停止.如果你也這麼認為,那你對多線程編程還沒有入門.在java中,線程的中斷(interrupt)只是改變了線程的中斷狀態,至於這個中斷狀態改變後帶來的結果,那是無法確定的,有時它更是讓停止中的線程繼續執行的唯一手段.不但不是讓線程停止運行,反而是繼續執行線程的手段.對於執行一般邏輯的線程,如果調用調用它的interrupt()方法,那麼對這個線程沒有任何影響,比如線程a正在執行: while(條件) x ++;這樣的語句,如果其它線程調用a.inter
Time of Update: 2018-12-03
interrupt會導致"線程的中斷",但是它並不能保證"中斷線程"。這裡說的"中斷線程"意思是"停止線程",而為什麼不用"停止線程"這個說法呢?因為線程有一個明確的stop方法,但它是反對使用的,所以請大家記住,在java中以後不要提停止線程這個說法,忘記它!為什麼不用"停止線程"的理由. [停止線程] 當在一個線程對象上調用stop()方法時,這個線程對象所啟動並執行線程就會立即停止,並拋出特殊的ThreadDeath()異常.這裡的"立即"因為太"立即"了,就象一個正在擺弄自己的玩具的孩
Time of Update: 2018-12-03
Ant是一個Apache基金會下的跨平台的構件工具,它可以實現項目的自動構建和部署等功能。在本文中,主要讓讀者熟悉怎樣將Ant應用到Java項目中,讓它簡化構建和部署操作。一. 安裝與配置:http://ant.apache.org/,在本文中下載的是1.7.0版本。解壓到某個目錄(例如E:/apache-ant-1.7.0),即可使用。添加系統內容變數:ANT_HOME,該變數指向Ant解壓後的根目錄,在此為E:/apache-ant-1.7.0。安裝與配置完畢後,讀者