From Gossip@Openhome

語言技術:Java Gossip(一)

hoo...I'm Tiger...
《Java SE 6 技術手冊》全書公開了!!

關於簡介 Java 的資料太多了,這輪不到我來介紹,您可以用 Google 搜尋到一堆 Java 的介紹,每本講授 Java 的書籍多多少少也會提到一些,您也可以從這篇 Java 歷史 介 紹開始認識 Java。

Java 是我最熟悉的程式語言,2004年9月30日 Tiger/J2SE 5.0 已經公佈,它有了一些大的變動與改進,這個分區主要整理一些我在瞭解 J2SE 5.0 過程中的一些心得。

JDK6  在 2006年12月初 正 式公佈,當中的新 增功能對於初學者來說,比較沒有很大的變動,在這份文件當中,會擷取幾個好用的 Java SE 6 功能加以介紹。


入門準備
    我不想告訴您學習Java很簡單(學習語言很簡單?基本上我認為只是書商與推銷語言的人在打的廣告標語...),至少學習Java的第一步,就要先搞定 PATHCLASSPATH, 如果您確定您搞定了,再來看以下的內容。
  • 基本 Console 互動
從互動中學習,是 我最喜愛的學習方式。學習Java的第一 步要先看的到您的程式執行結 果,要可以對程式輸入一些資料,作一些傻瓜式的互動
  • 基礎入門
資料型態、變數常 數、流程控制,學任何一個程式語言都不可 缺少的過程,雖然無趣但很實 際。

接觸物件
    在Java中所面對的「幾乎」都是物件(Object),所以首先要學的是一些基本的物件觀念,以及如何使用它們。
  • autoboxing、unboxing
基本 (Primitive)資料型態的 autoboxing、unboxing是J2SE 5.0新特性,雖然提供了方便,但隱藏了細節,建議對物件(Object)有一定程度瞭解的人使用。
  • 陣列(Array)        
不管在其它語言中 是如何,陣列(Array)在Java中 可得看作一個物件,它有一些值得探討的特性。
  • 字串(String)
字串也許是您在 Java中最常處理的物件,但也可能是最常 被忽視的物件,但從此刻開始,無論如何請重視它。

物件導向
    請記得一個觀念:學會一個支援物件導向的程式(如 Java)與學會物件導向(程式設計)觀念是兩碼子事。這邊儘量在說明Java的物件導向支援特性時,同時帶入一些物件導向觀念。
  • 封裝(Encapsulation)
封裝物件資訊是第 一步,您要瞭解如何使用類別定義物件,像 是定義物件的屬性、行為等等,類別是建構物件時所依賴的規格書。
您可以基於某個 (父)類別的定義加以擴充,而制訂出一個新 的(子)類別定義,兩個類別間某些定義可能相同或不同,新的(子)類別也可能擁有原來的(父)類別所沒有的定義。
抽象類別、介面型 態在物件導向設計中伴演著極重要的角色, 而其背後的多型應用,其使用的適當與否,足以影響程式的架構與未來的可維護性。

資源管理
  • 組織您的程式
什麼資源該放在什 麼地方,預先作好整理與分類,這樣才不會 到處散落,滿地都是*.class檔案。
一個程式的撰寫的 過程中,避免程式執行時的錯誤,往往佔了 程式開發時程的絕大多數時間,對於避免程式執行時的錯誤,Java 提供了例外處理機制。
J2SE 5.0 新增了列舉型態,除了常數設置的功能之外,它還給了您許多編譯時期的檢查功能,但別想的太複雜,它本質上還是一個類別。
J2SE 5.0 提供的泛型,目的在讓您定義「安全的」泛型類別(Generics class),事實上 J2SE 5.0 前就用 Object 解決了泛型類別的部份需求,J2SE 5.0 之後再解決的是型態安全問題。

參考資料
        如果您是入門 Java 的新手,記得 Java 已經有近10年的歷史了,網路上有很多對您有用的資料,記得 google 是您的好朋友,您也可以從下面的FAQ(Frequently Asked Questions)文件解決您不少的疑惑。

        下面的討論區與Wiki會對您很有幫助。在使用討論區要記得的是,不要慌慌張張的發問,先用搜尋功能找找答案,要提問前先看看別人都是如何發問的,並注意 每個版面的使用規範。

        Java 的入門書很多,每個人的入門需求不儘相同,這邊不作任何的入門書籍的推薦;進階書的部份,我想下面這本是最適合的,而且它是免費的,目前您也可以購買到中 文翻譯版本。

        最後當然別忘了,SunJava 官方網站 有很多資源,若遇到不懂的類別使用方法,API是最佳的參考文件。