已閱讀5頁,還剩22頁未讀, 繼續(xù)免費閱讀
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
第1章 Java開發(fā)基礎,教學提示:本章以實用為目的 ,通過簡要講述時下流行的面向對象程序設計思想和Java特有的虛擬機機制,使讀者初步了解Java程序開發(fā),并指導讀者完成第一個Java程序。通過本章學習,讀者將對Java程序開發(fā)有一個比較全面的了解。,教學目標:領會面向對象編程思想;了解Java的虛擬機機制;能獨立搭建Java開發(fā)環(huán)境。通過上機實踐,能編寫及運行簡單程序。,1.1 面向對象程序設計思想,Java是一種真正面向對象的具有眾多功能的高級編程語言,了解并掌握面向對象程序設計思想是學習Java編程必備的內容。本節(jié)初步介紹面向對象思想和面向對象程序設計步驟。,1.1.1 面向對象的基本特征,1.1.2 面向對象程序設計步驟,1.1.1 面向對象的基本特征,程序設計思想是程序設計的靈魂 ,掌握好的設計思想 ,才能寫出高效的程序。從計算機誕生到現(xiàn)在,程序設計語言的發(fā)展從最開始的機器語言、匯編語言到過程式語言、結構化高級語言,最后到支持面向對象技術的面向對象程序設計,使程序員可以脫離機器層次,在更抽象的層次上表達程序設計意圖。 面向對象程序設計思想最重要的概念是對象,一個對象既包括數(shù)據(jù),又包括操作這些數(shù)據(jù)的方法,對象中的數(shù)據(jù)并不能被對象的使用者直接訪問,只能通過由對象提供的方法來訪問和操作。這好比現(xiàn)實世界中的對象,比如一輛汽車,當需要增加車速時,是通過踩油門這個方法來實現(xiàn)的。 學習面向對象的程序設計首先要了解面向對象的基本概念。,返回,1. 面向對象,面向對象是一種認識客觀世界的觀點,是從結構組織角度模擬客觀世界的一種方法,人們在認識和理解現(xiàn)實世界的過程中,普遍運用以下三個構造法則: (1) 區(qū)分對象及其屬性,如區(qū)分車和車的大小。 (2) 區(qū)分整體對象及其組成部分,如區(qū)分車和車輪。 (3) 不同對象類的形成及區(qū)分,如所有車的類和所有船的類。,2. 對象(Object),對象是對一組信息及對其操作的描述。如:一個窗口是一個對象,它包含了窗口的信息(如大小、顏色、位置等)及其操作(如打開、關閉等)。,3. 屬性(Property),即對象所包含的信息。如:窗口的高度。屬性可以在設計對象時確定,也可以在程序運行時讀取和修改。,4. 方法(Method),即對象所具有的各種操作。如:窗口關閉。這種操作的過程對外是封閉的,即用戶只能看到這一方法實施后的結果。這相當于事先已經(jīng)設計好的各種過程,只需要調用就可以了,用戶不必去關心這一過程是如何編寫的,事實上,這個過程已經(jīng)封裝在對象中,用戶也看不到。對象的這一特性,即是對象的封裝性。,5. 事件(Event),即對象在執(zhí)行某一操作后激發(fā)并執(zhí)行的一個或多個過程。這些過程對用戶是透明的,用戶可以為這個過程編寫自己的程序代碼,以完成特定的操作。如:窗口對象在執(zhí)行打開過程時,就會激活一個Active 事件(過程),用戶可以自己編寫這一過程的代碼 ,以便在打開這個窗口時完成一些自己所要求的任務,如打開一個數(shù)據(jù)庫,對某個變量進行初始化等。,6. 類(Class)與實例(Instance),類是具有共同屬性、共同方法、共同事件的對象的集合。而一個具體的對象則是其對應類的一個實例。如果對某一個類的定義進行修改,如增加一些屬性或修改一些方法,就得到一個新的類,而原先的類就是新類的父類。如:我們在窗口類的定義上,另外定義它還包含兩個按鈕,一個標題是“確定”,一個標題是 “ 取消 ”,并且在分別按下這兩個按鈕后 ,執(zhí)行OK與Cancel兩個事件。這樣就定義了一個新類,我們可以把它叫做“選擇窗口”類,并保存它,這樣就可以直接由“選擇窗口” 生成窗口實例 ,而不用每次都由“窗口”類產生,然后再添加按鈕。,7. 繼承(Inheritance),任何一個子類都具有其父類所有的屬性、方法和事件,這一特性叫做類的繼承。如果父類的特性發(fā)生變化,其子類也相應改變。 繼承機制的優(yōu)點在于: (1) 避免了由于系統(tǒng)內類對象封閉而造成數(shù)據(jù)和操作冗余的現(xiàn)象 。每個子類都可以繼承其父類的特性,包括狀態(tài)與行為。同時子類可以有與父類不同的地方,即子類可根據(jù)自身特點新增或局部修改父類的行為而加以使用,甚至可以覆蓋父類中的定義。利用繼承,只要在原有類的基礎上修改、增補、刪減少量的數(shù)據(jù)和方法,就可以得到子類,然后生成大量不同的實例。 (2) 接口的一致性 (Consistency of interface) ,父類衍生子類的其他操作接口也傳遞給其子類。 (3) 可重用性,通過繼承明顯使軟件開發(fā)速度加快 ,實現(xiàn)較高程度的共享,這是繼承最重要的優(yōu)勢。,8. 消息(message),面向對象的世界是通過對象與對象間彼此的相互合作來推動的,對象間的這種相互合作需要一個機構協(xié)助進行 , 這樣的機構可以稱為 “ 消息傳遞” 。消息傳遞過程中 ,由發(fā)送消息的對象的使動操作產生輸出結果 ,消息傳送至接受消息的對象,引發(fā)接受消息的對象一系列的操作。,1.1.2 面向對象程序設計步驟,了解面向對象程序開發(fā)的一般步驟對編寫面向對象程序,特別是初學者有很大幫助。在開始編程前首先要確定需要那些類和對象來支持程序。一般可以分以下幾個步驟來進行程序設計。,1. 分析階段 2. 設計階段 3. 編碼階段,返回,1. 分析階段,這一階段主要采用面向對象技術進行需求分析。面向對象分析運用以下主要原則: (1) 構造和分解相結合的原則。 (2) 抽象和具體結合的原則。 (3) 封裝的原則。 (4) 繼承的原則。 根據(jù)上述分析的主要法則得到的模型是具有一定層次關系的問題空間模型,這個模型是相對有彈性,且易修改、易擴充的 。技術識別出問題域中的對象實體 ,標識出對象間的關系 ,然后通過對對象的分析,確定對象屬性及方法 ,利用屬性變化規(guī)律完成對象及其關系的有關描述 ,并利用方法演變規(guī)律描述對象或其關系的處理。,返回,2. 設計階段,這一階段主要利用面向對象技術進行概念設計。值得注意的是,面向對象的設計與面向對象的分析使用了相同的方法,這就使得從分析到設計的轉變非常自然,甚至難以區(qū)分??梢哉f,從“面向對象分析” 到“面向對象設計 ” 是一個積累型的擴充模型的過程 。這種擴充使得設計變得很簡單,它是從增加屬性、服務開始的一種增量遞進式的擴充。這一過程與結構化開發(fā)方法從數(shù)據(jù)流程圖到結構圖所發(fā)生的劇變截然不同。 一般而言,在設計階段就是將分析階段的各層模型化的“問題空間”逐層擴展,得到下個模型化的特定的“實現(xiàn)空間”。有時還要在設計階段考慮硬件體系結構、軟件體系結構,并采用各種手段(如規(guī)范化)控制因擴充而引起的數(shù)據(jù)冗余。,返回,3. 編碼階段,這一階段主要是將面向對象設計中得到的模型利用程序設計實現(xiàn)。具體操作包括:選擇程序設計語言編程、調試、試運行等。前面兩階段得到的對象及其關系最終都是由程序語言、數(shù)據(jù)庫等技術來實現(xiàn)的。,返回,1.2 Java的虛擬機機制,Java的一個重要的特征平臺無關性就是通過Java虛擬機屏蔽了與具體平臺相關信息來實現(xiàn)的。一般高級語言程序如果需要搬到另一平臺上使用,至少必須重新編譯才能保證能正常運行,而Java語言只需編譯成在Java虛擬機上運行的目標代碼,就可以直接在多個平臺上運行。,1.3 搭建Java開發(fā)環(huán)境,1.3.1 安裝J2SDK,1.3.2 設置J2SE,1.3.3 J2SDK幫助文檔的利用,1.3.1 安裝J2SDK,1. 開始安裝 雙擊下載的J2SE安裝程序,在出現(xiàn)的初始安裝界面中單擊 Next 按鈕,出現(xiàn)許可協(xié)議對話框,單擊Yes按鈕接受協(xié)議。 2. 選擇安裝目錄 不同版本的J2SE默認安裝目錄不同,對于j2sdk-1_4_2_04-windows-i586-p.exe,默認安裝目錄是C:j2sdk1.4.2_04,也可以單擊Change按鈕選擇安裝目錄,如圖1.1所示。,返回,3. 選擇安裝的組件 在如圖1.1所示的對話框中選擇安裝的組件,如果硬盤空間足夠,推薦安裝所有組件。 4. 選擇使用Java Plug-in 的瀏覽器 在圖1.1所示的對話框中單擊Next按鈕,出現(xiàn)如圖1.2所示的對話框,選擇使用的瀏覽器類型。 5. 結束安裝 單擊圖1.2所示對話框中的Install 按鈕將開始實際的安裝過程 ,最后單擊Finish按鈕結束安裝。,返回,圖1.1 選擇所安裝的組件和安裝目錄,返回,圖1.2 選擇使用Plug-In的瀏覽器,返回,對J2SE的設置主要是設置環(huán)境變量,以方便使用安裝目錄下 bin子目錄中的各種工具。由于J2SE的編譯、運行多在DOS環(huán)境下進行,為了能在任何目錄中使用C:j2sdk1.4.2_04bin目錄下的工具,可在Windows 9x操作系統(tǒng)C盤根目錄的autoexec.bat中加入如下一行: set path= C:j2sdk1.4.2_04bin;%path% 則以后每次打開DOS窗口時,會自動將C:j2sdk1.4.2_04bin目錄加入搜索路徑。在 DOS 中執(zhí)行一個程序時 ,如果當前目錄沒有該程序 ,會自動到C:j2sdk1.4.2_04bin等目錄查找。,1.3.2 設置J2SE,返回,J2SDK幫助文檔并不存在于J2SDK安裝文件中,而查看J2SDK幫助文檔又是我們了解J2SDK的最直接的途徑。,1.3.3 J2SDK幫助文檔的利用,返回,1.4 應用程序流程,1.4.1 建檔應用程序Javadoc,1.4.2 反編譯工具的使用,1.4.1 建檔應用程序Javadoc,Java文檔生成器(Javadoc)是一個軟件工程工具,這是Java區(qū)別于其他任何編程語言的地方,利用這個工具,可以為自己所編寫的源程序生產一份HTML格式的文檔,其中包括類和接口的描述,類的繼承層次,類中的任何成員變量、方法的索引和介紹,甚至還能包括Java文檔格式的注釋。,返回,Java采用一種稱做“字節(jié)編碼”的程序結構,分為小程序(嵌入到HTML文件中)和應用程序(直接在命令狀態(tài)下執(zhí)行)兩種類型。無論哪種結構,編譯后,均變成后綴為CLASS的同名可執(zhí)行文件。這種文件是不可閱讀的代碼。 下面介紹兩款Java反編譯工具,基于字符界面的JAD反編譯工具和圖形界面的小穎Java源代碼反編譯專家。,1.4.2
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024物業(yè)租賃中的讓與擔保 甲方與乙方合同范本
- 2025年度體育賽事代理合同終止及賽事推廣合作協(xié)議4篇
- 2025年度商鋪物業(yè)管理與應急響應預案合同4篇
- 2025年度變壓器租賃及電力設備租賃期滿續(xù)租合同3篇
- 2024藝人廣告代言服務合同范本
- 2025年度主題餐廳投資合作協(xié)議范本3篇
- 2025年度水果種植基地與電商平臺合作合同3篇
- 2024跨境電子商務融資代建合同
- 2025年度安全生產信息化服務合同范本3篇
- 2025年度新能源汽車充電站車棚建設與運營承包合同4篇
- 2024高考復習必背英語詞匯3500單詞
- 消防控制室值班服務人員培訓方案
- 《貴州旅游介紹》課件2
- 2024年中職單招(護理)專業(yè)綜合知識考試題庫(含答案)
- 無人機應用平臺實施方案
- 挪用公款還款協(xié)議書范本
- 事業(yè)單位工作人員年度考核登記表(醫(yī)生個人總結)
- 盾構隧道施工數(shù)字化與智能化系統(tǒng)集成
- 【企業(yè)盈利能力探析文獻綜述2400字】
- 2019年醫(yī)養(yǎng)結合項目商業(yè)計劃書
- 2023年店鋪工程主管年終業(yè)務工作總結
評論
0/150
提交評論