




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第4章面向?qū)ο蟪绦蛟O(shè)計(jì)基礎(chǔ)4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念4.2面向?qū)ο蟪绦蛟O(shè)計(jì)的特征4.3從現(xiàn)實(shí)世界到面向?qū)ο蟪绦蜷_發(fā)4.4綜合運(yùn)用實(shí)例4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念4.1.1什么是面向?qū)ο蟪绦蛟O(shè)計(jì)
面向?qū)ο蟪绦蛟O(shè)計(jì)(Object-OrientedProgramming,OOP)。
從客觀世界中的角度看,世界是事物的集合,把一個(gè)事物作為一個(gè)對(duì)象看待。每個(gè)事物都有自己的屬性和行為。從程序設(shè)計(jì)的角度看,事物的屬性可以用數(shù)據(jù)類型描述,對(duì)屬性的操作用方法來描述。
4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念4.1.1什么是面向?qū)ο蟪绦蛟O(shè)計(jì)
面向?qū)ο蟪绦蛟O(shè)計(jì)的實(shí)質(zhì)就是在程序設(shè)計(jì)中操作各對(duì)象并進(jìn)行對(duì)象之間的消息傳遞,同時(shí)接到消息的對(duì)象產(chǎn)生適合該消息的動(dòng)作。粉筆學(xué)生黑板教師教學(xué)內(nèi)容課桌教室課堂中部分對(duì)象模型用面向?qū)ο蟮乃枷脒M(jìn)行程序設(shè)計(jì)來描述老師講述一堂課的過程4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念教師學(xué)生⑴(i)⑵
⑶⑷
⑸
⑴上課鈴響了⑵教師走進(jìn)教室⑶學(xué)生問候老師⑷教師宣布開始上課⑸教師提問...(i)下課鈴響了課堂中教師和學(xué)生對(duì)象的部分消息傳遞4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念
對(duì)象與類簡(jiǎn)單地說:對(duì)象是表示現(xiàn)實(shí)世界中某個(gè)具體的事物;類是對(duì)對(duì)象的抽象描述。類是模板,是抽象的,對(duì)象是類的實(shí)例,是具體的。學(xué)生:張三類(CLASS)如:
classStudent”將對(duì)象抽象為類對(duì)類進(jìn)行實(shí)例化類包括:1、屬性(也叫數(shù)據(jù)成員,是靜態(tài)特征,描述對(duì)象的狀態(tài))
2、方法(也叫方法成員,是動(dòng)態(tài)特征,描述對(duì)象在接收到某一個(gè)消息后所完成的動(dòng)作)4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念4.1.3類類就是對(duì)具有相同特征的不同對(duì)象的抽象描述,是抽象的模板。
屬性:姓名 科目 年齡 性別 ...方法:拿粉筆板書(…)講述(…)...類名:教師屬性:長(zhǎng)度 顏色 形狀 ...方法:寫(…)畫(…)涂(…)...類名:粉筆教師類和粉筆類4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念屬性:姓名彭正文科目Java年齡 38性別 男...方法:拿粉筆板書(…)講述(…)演示(…)...教師對(duì)象屬性:長(zhǎng)度 5cm顏色 紅色形狀 圓柱...方法:寫(…)畫(…)涂(…)...粉筆對(duì)象向粉筆發(fā)出寫“面向?qū)ο蟆钡南⒃诤诎迳蠈懗觥懊嫦驅(qū)ο蟆钡膬?nèi)容,字體顏色為紅色,同時(shí)粉筆長(zhǎng)度逐步變短教師對(duì)象和粉筆對(duì)象4.1面向?qū)ο蟪绦蛟O(shè)計(jì)的基本概念方法可以修改對(duì)象的屬性,一個(gè)對(duì)象也可以修改和訪問其他對(duì)象
對(duì)象是表示現(xiàn)實(shí)世界中某個(gè)具體的事物,是具體的實(shí)例。
4.2面向?qū)ο蟪绦蛟O(shè)計(jì)的特征
OOP中采用了三大技術(shù):封裝、繼承和多態(tài)
4.2.1封裝封裝:將數(shù)據(jù)(屬性)和對(duì)數(shù)據(jù)的操作(方法)捆綁在一起成為類。一般在進(jìn)行類封裝時(shí)應(yīng)盡量避免走兩個(gè)極端,一個(gè)是將類中所有成員全部敞開訪問,另一種就是將所有成員全部保護(hù)起來。前一種情況將失去面向?qū)ο蟮囊饬x,而后一種情況則違背了現(xiàn)實(shí)世界事物的規(guī)律,因?yàn)橥耆忾]的事物是沒有任何意義的。4.2面向?qū)ο蟪绦蛟O(shè)計(jì)的特征public職工人數(shù)public領(lǐng)導(dǎo)public售票信息public車次信息...public咨詢(…)public售票(…)...類名:火車站private職工人數(shù)private領(lǐng)導(dǎo)public售票信息public車次信息...public咨詢(…)public售票(…)private獲取職工人數(shù)(…)...類名:火車站
火車站類添加“獲取職工人數(shù)”成員的火車站類一般把外部要頻繁訪問的成員對(duì)外敞開,而外部幾乎不需要了解的成員進(jìn)行保護(hù)。如在火車站中,列車車次信息和售票窗口信息等屬于外部經(jīng)常訪問成員,應(yīng)該敞開訪問,而火車站中的職工人數(shù)、職工的工資、領(lǐng)導(dǎo)是誰等對(duì)于外部來講是不需要了解的,因此應(yīng)該對(duì)外部屏蔽。4.2面向?qū)ο蟪绦蛟O(shè)計(jì)的特征4.2.2繼承繼承:將一個(gè)已有類的數(shù)據(jù)和方法保留,并加上自己特殊的方法和屬性,構(gòu)成一個(gè)新類。原來的類就是父類,新類就是子類。姓名 性別年齡年級(jí)班主任…類名:學(xué)生平均成績(jī)是否為少先隊(duì)員…類名:小學(xué)生專業(yè)是否為團(tuán)員…類名:大學(xué)生單繼承單繼承繼承4.2面向?qū)ο蟪绦蛟O(shè)計(jì)的特征4.2.3多態(tài)
多態(tài):在一個(gè)類或者多個(gè)可以讓多個(gè)方法是用相同的方法名。4.2面向?qū)ο蟪绦蛟O(shè)計(jì)的特征按快門()…類名:相機(jī)按快門(){按機(jī)械拍攝原理拍攝}…類名:機(jī)械相機(jī)按快門(){按數(shù)碼拍攝原理拍攝}…類名:數(shù)碼相機(jī)繼承繼承4.3從現(xiàn)實(shí)世界到面向?qū)ο蟪绦蜷_發(fā)
在現(xiàn)實(shí)世界中的許多問題幾乎都可以用面向?qū)ο蟪绦蜷_發(fā)的方法很好的解決。在用面向?qū)ο蟪绦蛟O(shè)計(jì)的方法解決這些問題時(shí)如何對(duì)現(xiàn)實(shí)問題進(jìn)行對(duì)象化處理,是面向?qū)ο蟪绦蛟O(shè)計(jì)過程中的一個(gè)重要的環(huán)節(jié)。在實(shí)際應(yīng)用中,一般首先要使用抽象的方法把問題的實(shí)質(zhì)抽取出來,之后采取一定的面向?qū)ο蟪绦蜷_發(fā)的步驟來進(jìn)行具體實(shí)施。4.3.2面向?qū)ο蟪绦蛟O(shè)計(jì)步驟
運(yùn)用面向?qū)ο蟪绦蛟O(shè)計(jì)方法進(jìn)行軟件設(shè)計(jì),一般要經(jīng)過系統(tǒng)分析、系統(tǒng)設(shè)計(jì)、對(duì)象設(shè)計(jì)、應(yīng)用程序生成、軟件的測(cè)試與維護(hù)等幾個(gè)階段。系統(tǒng)分析階段的主要任務(wù):對(duì)系統(tǒng)進(jìn)行對(duì)象分解,從中抽象出對(duì)象、類及子類,并建立該系統(tǒng)對(duì)象模型。系統(tǒng)設(shè)計(jì)階段的主要任務(wù):確定目標(biāo)系統(tǒng)問題求解策略,包括系統(tǒng)劃分為子系統(tǒng)以及各個(gè)子系統(tǒng)的硬件和軟件資源配置等。4.3從現(xiàn)實(shí)世界到面向?qū)ο蟪绦蜷_發(fā)對(duì)象設(shè)計(jì)階段的主要任務(wù):完成各個(gè)對(duì)象(類)的細(xì)節(jié)處理,包括內(nèi)部數(shù)據(jù)結(jié)構(gòu)表示、對(duì)象接口及其算法等。應(yīng)用程序生成階段:該階段主要是根據(jù)對(duì)象間的相互作用關(guān)系,完成整個(gè)系統(tǒng)軟件的構(gòu)造。軟件的測(cè)試與維護(hù)階段的主要任務(wù):保證軟件的正確、可靠運(yùn)行。4.3從現(xiàn)實(shí)世界到面向?qū)ο蟪绦蜷_發(fā)4.4綜合運(yùn)用實(shí)例用前面所學(xué)到的面向?qū)ο蠡A(chǔ)知識(shí)來描述某個(gè)教師上一堂課的過程。【實(shí)例4】問題描述:使用面向?qū)ο蠹夹g(shù)描述某個(gè)教師上課過程。問題分析步驟1:抽象出上課過程中所設(shè)及到的類。上課過程中所涉及到的類主要有:類集合{人、教師、學(xué)生、黑板、粉筆、鈴、粉筆擦、桌子、講臺(tái)、課桌、教材、講義、教室、課}其中各類之間的關(guān)系:1、繼承關(guān)系:(1)教師類、學(xué)生類是人類的子類(2)講臺(tái)、課桌類是桌子類的子類(3)講義類是教材類的子類2、聚合及組合關(guān)系:(1)
教室類中包容了講桌、課桌、黑板類對(duì)象(2)課類包容了人、教師、學(xué)生、教室類對(duì)象。(3)教師聚合了教材、講義。(4)講臺(tái)包括了粉筆、粉筆擦類
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 修剪養(yǎng)護(hù)合同范例寫
- 土地延長(zhǎng)租賃合同范本
- 2025年冷凍蔬菜購銷合同格式
- 金融市場(chǎng)中的數(shù)學(xué)模型-深度研究
- 在建項(xiàng)目投資合同范本
- 借款咨詢合同范本
- 國家旅行合同范本
- 墊資協(xié)議合同范本
- 2025年會(huì)議室講臺(tái)安裝合同示范文本
- 老舊住宅小區(qū)拆除重建合同
- 公路養(yǎng)護(hù)服務(wù)方案(技術(shù)方案)
- 徐州2025年江蘇徐州市口腔醫(yī)院招聘非在編醫(yī)務(wù)人員53人筆試歷年參考題庫附帶答案詳解-1
- 2025年01月2025中國作家協(xié)會(huì)所屬單位公開招聘11人筆試歷年典型考題(歷年真題考點(diǎn))解題思路附帶答案詳解
- 用色彩情感引發(fā)共鳴社交媒體運(yùn)營秘訣
- 2025年不離婚互不干涉協(xié)議模板
- 2025年江西機(jī)電職業(yè)技術(shù)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫含答案解析
- 2025年江蘇旅游職業(yè)學(xué)院高職單招職業(yè)技能測(cè)試近5年??及鎱⒖碱}庫含答案解析
- 2024年江西司法警官職業(yè)學(xué)院高職單招語文歷年參考題庫含答案解析
- 2025年上海市租房合同標(biāo)準(zhǔn)樣本(2篇)
- 四年級(jí) 人教版 數(shù)學(xué) 第三單元《乘法運(yùn)算律(四)(例8) -解決問題策略的多樣化》課件
- 2025年全國法制宣傳日普法知識(shí)競(jìng)賽題庫及答案(共200題)
評(píng)論
0/150
提交評(píng)論