390 likes | 653 Views
Java 2 與 UML 物件導向程式設計範例教本. 課程名稱: _____________ 指導教授: _____________. 本書特點. Thinking in Object 物件導向的思考: 使用大量圖例說明物件導向技術與觀念,以便幫助讀者建立物件導向思考模式,並且真正使用物件導向技術來建立應用程式。 UML 統一塑模語言: 使用免費的 UML 塑模工具 JUDE 來繪製 UML 圖形,以完整實例說明 UML 的物件導向分析與設計過程,讀者不只可以學習各種 UML 符號圖形,更能夠了解 UML 實際在物件導向分析和設計上所扮演的角色。
E N D
Java 2與UML物件導向程式設計範例教本 課程名稱:_____________ 指導教授:_____________
本書特點 • Thinking in Object物件導向的思考:使用大量圖例說明物件導向技術與觀念,以便幫助讀者建立物件導向思考模式,並且真正使用物件導向技術來建立應用程式。 • UML統一塑模語言:使用免費的UML塑模工具JUDE來繪製UML圖形,以完整實例說明UML的物件導向分析與設計過程,讀者不只可以學習各種UML符號圖形,更能夠了解UML實際在物件導向分析和設計上所扮演的角色。 • 整合Java與UML類別圖:所有程式範例都配合UML類別圖的符號和閞聯性,讀完本書看到UML類別圖,就知道如何撰寫Java的類別程式碼。
如何閱讀本書-1 • 第一篇的內容屬於Java語言開發環境建立,說明如何在Windows作業系統安裝JDK和JCreator LE整合開發環境。筆者分別說明在「命令提示字元」和JCreator LE開發Java程式的步驟和JCreator LE整合開發環境的使用介面。 • 第二篇是Java語言的基礎,屬於傳統結構化程式語言的變數、運算子、流程式控制和程序與函數,再加上陣列和字串。Java初學者請詳細閱讀本篇,以便建立基本的Java程式設計能力,而且陣列將在第三篇用來實作類別關聯性。
如何閱讀本書-2 • 第三篇的第7~9章是物件導向分析與設計,說明物件導向觀念和如何建立物件導向應用程式,讀者可以使用第8章的UML塑模過程來逐步從問題分析建立出類別與物件。 • 第10~13章是物件導向程式設計,學習如何使用Java語言來實作第8章UML物件導向分析與設計的結果。筆者依序說明類別與物件、繼承、多形和介面的多重繼承,使用大量程式範例並輔以UML類別圖,輕鬆帶領讀者進入物件導向程式設計的天空。 • 第四篇是大型應用程式開發,詳細說明Java套件的觀念、集合物件、執行緒和Java Applet、AWT與委託事件處理。
目錄-I • 第一篇 Java開發環境 • 第1章: Java開發環境的建立 • 第2章: 建立Java應用程式 • 第二篇 Java語言的基礎 • 第3章: 變數、資料型態與運算子 • 第4章: 流程控制結構 • 第5章: 程序與函數的類別方法 • 第6章: 陣列與字串
目錄-II • 第三篇 Java物件導向程式設計與UML • 第7章: 物件導向技術導論 • 第8章: UML的物件導向設計與分析 • 第9章: UML統一塑模語言 • 第10章: 類別與物件 –封裝 • 第11章: 繼承與多重繼承 - 類別架構 • 第12章: 組成、聚合關係與抽象類別 • 第13章: 過載與多形 –名稱再用
目錄-III • 第四篇 Java應用程式開發 • 第14章: 套件 - 開發大型應用程式 • 第15章: 集合物件 - 實作類別關聯性 • 第16章: Java的例外與檔案處理 • 第17章: Java的執行緒 • 第18章: Java Applet、AWT套件 與委託事件處理 • 附錄A:Math數學類別與字串方法 • 附錄B:UML類別圖與Java程式碼 • 附錄C:UML塑模工具JUDE的使用
第1章 Java開發環境的建立 • 1-1 程式語言與Java的基礎 • 1-2 Java應用程式開發環境的建立 • 1-3 JCreator LE整合開發環境的安裝
1-1 程式語言與Java的基礎 • 1-1-1 程式與軟體 • 1-1-2 Java平台 • 1-1-3 Java程式語言的特點
1-1 程式語言與Java的基礎 • 「程式語言」(Programming Languages)如同我們溝通的語言一般,它是人類告訴電腦如何執行的一種語言,也就是人類與電腦之間溝通的語言。以技術角度來說,程式語言是一種將執行指令傳達給電腦的標準通訊技術。 • 「程式」(Programs)是使用指定程式語言所撰寫沒有混淆文字、數字和鍵盤符號所組成的特殊符號,這些符號組合成指令和敘述,再進一步編寫成程式碼,程式碼可以告訴電腦解決指定問題的步驟。
1-1-1 程式與軟體-什麼是程式 • 程式如同一個轉換器,當從電腦鍵盤或滑鼠取得輸入資料後,執行程式就可以將資料轉換成有用的資訊,輸出結果可能是在螢幕顯示或列表機印出,電腦只是依照程式的指令將輸入資料進行轉換,以產生所需的輸出結果。
1-1-1 程式與軟體-軟體與應用程式 • 「軟體」(Softwares)是一種電腦執行的應用程式,通常軟體是一個或多個程式的泛稱,或是一整套應用程式的總稱。「應用程式」(Applications)是一種處理指定工作的電腦程式,例如:數學分析、文書處理、試算表和程式語言開發工具等。
1-1-2 Java平台-說明 • 「Java」(爪哇)是一種高階程式語言,也是一種物件導向程式語言。類似C++語言的編譯式語言,不過並不完全相同,因為它是結合編譯和直譯優點的程式語言。 • 現在讓我們來看看Java程式語言的「平台」(Platform),平台是一種結合硬體和軟體的執行環境,簡單的說,電腦程式是在平台上執行。因為Java屬於一種與硬體無關和跨平台的程式語言,所以Java平台是一種軟體平台,主要是由JVM和Java API兩個元件所組成。
1-1-2 Java平台-JVM(說明) • Java編譯程式可以將Java原始程式碼編譯成位元組碼(Bytecode)。位元組碼是一種虛擬的機器語言,這台電腦稱為JVM(Java Virtual Machine)。換句話說,在作業系統需要安裝JVM直譯程式,才能夠直譯和執行位元組碼。 • Java原始程式碼(副檔名.java)在編譯成位元組碼(副檔名.class)後,就可以在Windows、UNIX或Machintosh的Mac OS作業系統上執行。
1-1-2 Java平台-JVM(圖例) • 只需作業系統安裝JVM直譯程式,同一個位元組碼檔案,可以跨平台在不同作業系統上正確的執行。
1-1-2 Java平台-Java API • Java API(Java Application Programming Interface)是軟體元件的集合。也就是在C/C++語言所謂的函式庫,提供集合物件、GUI元件、檔案處理、資料庫存取和網路等相關的類別和介面,稱為「套件」(Packages),詳細的說明請參閱第14章。
1-1-3 Java程式語言的特點-1 • 分散式(Distributed) • Java語言最初的發展是一種網路程式語言,可以支援各種網路通訊協定,屬於一種分散式的程式語言,能夠建立主從架構的應用程式,輕鬆存取網路上其它主機的資源。
1-1-3 Java程式語言的特點-2 • 多執行緒(Multi-Threading) • Java語言支援多執行緒,在同一程式能夠建立多個執行的小程式,稱為「輕量行程」(Light Weight Process),以便執行不同的工作,並且支援同步功能,能夠避免「鎖死」(Deadlock)情況的發生。
1-1-3 Java程式語言的特點-3 • 垃圾收集(Garbage Collection) • 垃圾收集是指如何處理程式不再使用的記憶體空間,在C/C++語言需要自行處理記憶體的配置與釋放,當程式配置的記憶體不再使用時,程式需要提供程式碼釋放記憶體歸還給作業系統,如此作業系統才能夠再配置給其它的應用程式。 • Java語言擁有垃圾收集能力,程式設計者不用擔心記憶體配置的問題,因為在執行Java程式時,自動會將不再使用的記憶體歸還給作業系統。
1-1-3 Java程式語言的特點-4 • 例外處理(Exception Handling) • 電腦程式不可能沒有「小臭蟲」(Bugs),一些小錯誤可能只會產生錯誤的結果,但是有一些小錯誤可能導致嚴重的系統當機問題,傳統程式語言並沒有完善的例外處理,所以常常會出現一些不明的系統錯誤。 • Java語言的例外處理可以讓程式更加「強壯」(Robust),這算程式執行時遇到不尋常的情況,也不會造成程式的「崩潰」(Crashing)或整個系統當機的情況。
1-2 Java應用程式開發環境的建立 • 1-2-1 Java語言的開發環境 • 1-2-2 昇陽JDK的安裝 • 1-2-3 JDK的環境設定 • 1-2-4 安裝JDK說明文件 • 1-2-5 程式編輯與開發工具
1-2 Java應用程式開發環境的建立 • Java程式的開發環境需要安裝昇陽的JDK,然後配合Windows的記事本、編輯工具或整合開發環境來建立Java應用程式。 • 程式語言的「開發環境」(Development Environment)是一組工具程式用來建立、編譯和維護程式語言所建立的應用程式。
1-2-1 Java語言的開發環境-終端機模式的開發環境 • 對於傳統MS-DOS或UNIX、Linux系統的使用者,或稱為「終端機」(Terminals)模式,程式執行環境輸入資料和輸出資料都是「命令列模式」(Command-line Interface),即文字模式的鍵盤輸入或單純文字內容的輸出。 • 在終端機模式的開發環境只需安裝Sun的Java開發工具「Java Development Kit」(JDK),然後配合vi、edit或記事本等程式編輯程式碼,就可以開發Java應用程式。
1-2-1 Java語言的開發環境-整合開發環境(說明) • 目前高階程式語言大都擁有「整合開發環境」(Integrated Development Environment、簡稱IDE),在同一個應用程式就可以編輯、編譯、執行和除錯特定語言的應用程式。 • 目前巿面上有多套支援Windows作業系統的Java整合開發環境,只需配合JDK就可以在同一工具軟體編輯、編譯和除錯Java程式。
1-2-1 Java語言的開發環境-整合開發環境(種類1) • Sun Java Studio Standard:Sun昇陽公司的Java整合開發環境,它是以NetBeans應用程式平台為基礎建立的整合開發環境,其網址為:http://wwws.sun.com/software/sundev/jde/index.html。 • NetBeans IDE:NetBeans是一個開放原始碼計劃,屬於一個全功能的Java整合開發環境,其網址為:http://www.netbeans.org/。 • Borland JBuilder:Borland公司的Java整合開發環境,分成數個版本,Personal版可以免費下載,其網址:http://www.borland.com/
1-2-1 Java語言的開發環境-整合開發環境(種類2) • Gel:Gexperts公司的免費整合開發環境,這是由Gerald Nunn使用Delphi所開發支援中文使用介面的Java/JSP IDE,其網址為:http://www.gexperts.com/index.html。 • JCreator:Xinox軟體公司的JCreator整合開發環境,這是Windows作業系統使用C++語言所開發的應用程式,分為LE(Lite Edition)和Pro(Pro Edition)兩種版本,其網址:http://www.jcreator.com/。
1-2-2 昇陽JDK的安裝 • 雖然有些Java整合開發環境在安裝時就會安裝JDK,例如:Borland JBuilder,不過大部分整合開發環境需要自行安裝JDK。昇陽的JDK分成多種版本,本書使用的是J2SE(Java 2 Platform Standard Edition)。 • 在昇陽網站可以免費下載JDK,本書使用的版本是5.0 Update 2,其內部版本為1.5.0.02版,網址為:http://java.sun.com/j2se/。
1-2-3 JDK的環境設定-說明 • 在安裝好JDK後,如果使用整合開發環境,整合開發環境會自動搜尋JDK的安裝路徑,然後選擇使用的JDK版本。 • 對於在「命令提示字元」視窗編譯和執行Java程式,我們需要設定JDK的執行環境。 • JDK的環境設定是在Windows XP新增環境變數Path的搜尋路徑「C:\Program Files\Java\jdk1.5.0_02\bin」,即JDK的安裝路徑。
1-2-3 JDK的環境設定-設定 • 在「編輯系統變數」對話方塊的【變數值】欄最後加上【;C:\Program Files\Java\jdk1.5.0_02\bin】,之前是「;」號,按3次【確定】鈕完成JDK的環境設定。
1-2-4 安裝JDK說明文件 • JDK Java Documents說明文件提供Java語言的特點、新增功能和API套件的詳細說明,在下載JDK時,我們可以一起下載JDK Document說明文件,1.5.0版的檔案名稱為【jdk-1_5_0-doc.zip】。 • JDK說明文件是ZIP格式的壓縮檔案,只需使用WinZIP等解壓縮工具,或是Java JDK內建的jar工具程式進行解壓縮,如下所示: C:\>jar xvf d:\jdk-1_5_0-doc.zip Enter
1-2-5 程式編輯與開發工具 • Java語言的程式碼檔案是ANSI標準的文字檔案,可以使用任何文字編輯器,例如:Windows記事本和WordPad等進行程式碼的編輯。
1-3 JCreator LE整合開發環境的安裝 • 1-3-1 安裝JCreator LE整合開發工具 • 1-3-2 啟動和設定JCreator LE整合開發工具
1-3 JCreator LE整合開發環境的安裝 • JCreator是Xinox軟體公司的產品,一套Windows環境功能強大的Java整合開發環境,提供專案管理、範本、類別瀏覽和除錯介面,能夠在整合環境中直接編輯、編譯和執行Java程式,分為:LE和Pro兩種版本。 • LE版本是免費軟體,和Pro版本的差異在一些進階功能和精靈工具。例如:Pro版擁有類別精靈、Interface介面精靈和Bean屬性編輯器等,Pro版本是一套共享軟體,可以免費下載試用30天。
1-3-1 安裝JCreator LE整合開發工具 • 當在作業系統安裝好JDK和JavaDocs說明文件後,我們就可以下載JCreator LE程式檔案進行安裝,其基本系統需求支援Windows 95/98/ME/XP/NT4或2000作業系統。 • JCreator LE是JCreator的簡化版本,目前版本是3.5版,因為使用C++語言開發,其執行效能比以Java語言開發的整合環境來的高。JCreator LE的下載網址:http://www.jcreator.com/。 • JCreator LE的下載檔案是ZIP格式的壓縮檔【jcrea350.zip】,請將它解壓縮到暫存目錄,就可以開始安裝JCreator LE。
1-3-2 啟動和設定JCreator LE整合開發工具-步驟一 • 第一步是將JCreator LE指定成.java、.jcp、.jcw、.jsp和.xml等檔案預設開啟的應用程式。
1-3-2 啟動和設定JCreator LE整合開發工具-步驟二 • 第二步JCreator LE將自動搜尋目前安裝JDK的路徑,以此例是JDK 1.5.0.02,如果作業系統同時安裝多種不同版本的JDK,請按【Browse】鈕選擇JDK路徑。
1-3-2 啟動和設定JCreator LE整合開發工具-步驟三 • 在第三步請按【Browse】鈕選擇JavaDocs安裝的路徑。