From Gossip@caterpillar
語言技術:Java Gossip(二)
在學習Java的過程中,您會接觸到很多框架( Framework),而第一步就是從J2SE的框架開始學習,框架讓您不用重新打造您需要的功能元件,它也是經驗的集成,即使您要重新打造,參考框架的實作方式,就可以讓您獲得不少寶貴的經驗。事實上以下的每個主題區都有專書介紹,這邊所介紹的內容,都只是某個主題的入門,若有進階的應用需求,查閱相關書籍是必要的。
Collection 類包括了 List 類與 Set 類,List 以放置物件至容器中的順序來排列物件,Set 類不接受重覆的物件,並有自己的一套排序規則。
在將物件存入 Map類時,需要配合一把key,您要取回物件時就是根據這把key,Map中的key是唯一的,Map擁有自己的排序機制。
File類別是檔案的抽象表示,也是處理檔案輸入輸出時所必備的。
電腦中的資料都是以 0 與 1 的方式來儲存,如果您要在兩個裝置之間進行資料的存取,當然也是以 0 與 1 位元的方式來進行,Java將資料目的地與來源之間的流動抽象化為一個串流(Stream),而當中流動的則是位元資料。
Reader、 Writer等是處理字元串流(Character Stream)的相關類別,簡單的說,就是對串流資料以一個字元(16bit)的長度為單位來處理(0~65535、0x0000-0xffff),並進行適當的字元轉換處理。
想要實作執行緒功能,只要實作Runnable介面,單就表面上來看,執行緒並不困難。
您只要實作 Runnable介面,就可以實作執行緒功能,入門是簡單的,但資料一被共用,事情就變得複雜。
來看看 JDK 5.0 為多執行緒新增的幾個好用類別。
即使您拿到一個類別並對它一無所知,但其實它本身就包括了許多資訊,從 Class 開始,您可以獲得這個類的許多訊息。
使用反射機制,您可以於執行時期動態載入類別並生成物件,操作物件上的方法甚至改變類別成員的值。
Annotation 對程式運行沒有影響,它的目的在對編譯器或分析工具說明程式的某些資訊,您可以在package、class、method、field等上加上 Annotation。
在定義 Annotation 型態的時候,為 Annotation 型態加上 Annotation 並不奇怪,這為處理 Annotation 型態的工具提供資訊。
您可以將一些屬性設定獨立於一個.properties檔中,由程式讀取,若要修改屬性則直接修改.properties檔案即可。也可以將訊息另外定義在一個文字檔案中,而不是寫死在程式中,日後想要更改訊息時,只要更改文字檔案內容,而不用重新編譯程式。
表面上看來,要取得系統的時間只要使用 Date 類別就可以了,但查閱 Date 後,發現很多方法都被標示為 Deprecated?
如果您只是要作一些簡單的文件記錄,可以考慮內建在JDK 中的Logging API,好處是它從JDK 1.4之後就成為J2SE的一員。
如果您想要排定任務在某些時間點運行,那麼您可以使用標準 API中的Timer與TimerTask。
|