第一講面向?qū)ο蟾攀鯻第1頁
第一講面向?qū)ο蟾攀鯻第2頁
第一講面向?qū)ο蟾攀鯻第3頁
第一講面向?qū)ο蟾攀鯻第4頁
第一講面向?qū)ο蟾攀鯻第5頁
已閱讀5頁,還剩21頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

唐姍計算機(jī)與信息學(xué)院第一講面向?qū)ο蟾攀鰞?nèi)容提要面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕咎卣鳛槭裁匆捎肬ML建模2面向?qū)ο?Object-Oriented)基本概念3OO的基本思想從現(xiàn)實(shí)世界中客觀存在的事物出發(fā)來建立軟件系統(tǒng),強(qiáng)調(diào)直接以問題域(現(xiàn)實(shí)世界)中的事物為中心來思考問題、認(rèn)識問題,并根據(jù)這些事物的本質(zhì)特征,把它們抽象地表示為系統(tǒng)中的對象,作為系統(tǒng)的基本構(gòu)成單位。這可以使系統(tǒng)直接映射問題域,保持問題域中事物及其相互關(guān)系的本來面貌(對象)用對象的屬性表示事物的靜態(tài)特征;用對象的操作表示事物的動態(tài)特征。(屬性與操作)對象的屬性與操作結(jié)合為一體,成為一個獨(dú)立的、不可分的實(shí)體,對外屏蔽其內(nèi)部細(xì)節(jié)。(對象的封裝)對事物進(jìn)行分類。把具有相同屬性和相同操作的對象歸為一類,類是這些對象的抽象描述,每個對象是它的類的一個實(shí)例。(分類)4OO的基本思想復(fù)雜的對象可以用簡單的對象作為其構(gòu)成部分。(聚合)通過在不同程度上運(yùn)用抽象的原則,可以得到較一般的類和較特殊的類。特殊類繼承一般類的屬性與操作,從而簡化系統(tǒng)的構(gòu)造過程及其文檔。(繼承)類具有封閉性,把內(nèi)部的屬性和操作隱藏起來,只有公共的操作對外是可見的。(類的封閉性)對象之間通過消息進(jìn)行通訊,以實(shí)現(xiàn)對象之間的動態(tài)聯(lián)系。(消息)通過關(guān)聯(lián)表達(dá)類(一組對象)之間的靜態(tài)關(guān)系。(關(guān)聯(lián))5

面向?qū)ο蠓椒ǖ慕鉀Q問題的思路是從現(xiàn)實(shí)世界中的客觀對象(如人和事物)入手,盡量運(yùn)用人類的自然思維方式來構(gòu)造軟件系統(tǒng),這與傳統(tǒng)的結(jié)構(gòu)化方法從功能入手和信息工程化方法從信息入手是不一樣的。在面向?qū)ο蠓椒ㄖ校岩磺卸伎闯墒菍ο蟆?/p>

6例如:編寫一個開發(fā)票程序,需要對發(fā)票的名細(xì)欄進(jìn)行計算。編號名稱規(guī)格單位數(shù)量單價金額合計非面向?qū)ο笏悸罚憾x數(shù)據(jù)結(jié)構(gòu)定義函數(shù)面向?qū)ο笏悸罚簩ο笠唤M屬性操作:發(fā)票總計……一切都是對象7從程序設(shè)計方法的角度看,面向?qū)ο笫且环N新的程序設(shè)計范型(paradigm),其基本思想是使用對象、類、繼承、封裝、聚合、關(guān)聯(lián)、消息、多態(tài)性等基本概念來進(jìn)行程序設(shè)計。自八十年代以來,面向?qū)ο蠓椒ㄒ焉钊氲接嬎銠C(jī)軟件領(lǐng)域的幾乎所有分支。它不僅是一些具體的軟件開發(fā)技術(shù)與策略,而且是一整套關(guān)于如何看待軟件系統(tǒng)與現(xiàn)實(shí)世界的關(guān)系,用什么觀點(diǎn)來研究問題并進(jìn)行問題求解,以及如何進(jìn)行系統(tǒng)構(gòu)造的軟件方法學(xué)。從這個意義上講:面向?qū)ο蠓椒ㄊ且环N運(yùn)用對象、類、繼承、封裝、聚合、關(guān)聯(lián)、消息、多態(tài)性等概念來構(gòu)造系統(tǒng)的軟件開發(fā)方法。什么是面向?qū)ο髢?nèi)容提要面向?qū)ο蟮幕靖拍蠲嫦驅(qū)ο蟮幕咎卣鳛槭裁匆捎肬ML建模8面向?qū)ο蟮幕咎卣?面向?qū)ο蟪绦蛟O(shè)計的基本特征包括了抽象、封裝、繼承和多態(tài),對象之間是通過消息相互作用的。1.抽象(Abstraction)抽象是解決實(shí)際問題經(jīng)常采用的策略,也是人類認(rèn)識世界的本能方式。所謂抽象是指從許多事物中,舍棄個別的、非本質(zhì)的屬性,抽取出共同的、本質(zhì)的屬性的過程,它是形成概念的必要手段。例如現(xiàn)實(shí)世界中一個學(xué)校有許多學(xué)生,在抽象過程中每個學(xué)生可以用學(xué)號、姓名、性別、年齡、家庭住址等信息進(jìn)行描述;同時每個學(xué)生還可以有注冊學(xué)籍、選修課程等行為。102.封裝(Encapsulation)封裝是指將現(xiàn)實(shí)世界中某個事物的屬性與行為聚集在一個邏輯單元內(nèi)部的機(jī)制。封裝指將對象屬性和操作結(jié)合在一起,構(gòu)成一個獨(dú)立的對象。它的內(nèi)部信息是隱藏的,不允許外界直接存取對象的屬性,而只能通過指定的接口與對象聯(lián)系,降低了對象間的耦合度。實(shí)際上,封裝并不是新的概念,在日常生活中,處處可以看到封裝機(jī)制的應(yīng)用。例如,一臺日常的電視機(jī)。封裝是實(shí)現(xiàn)數(shù)據(jù)隱藏的有效手段,是一種很好的管理數(shù)據(jù)與操作行為的機(jī)制,它可以保證數(shù)據(jù)結(jié)構(gòu)的安全性,提高了應(yīng)用系統(tǒng)的可維護(hù)性和可移植性。11售報亭屬性服務(wù)報刊A報刊B…錢箱報刊零售款貨清點(diǎn)顧客12133.繼承(Inheritance)繼承是類之間的一種常見關(guān)系。這種關(guān)系為共享數(shù)據(jù)和操作提供了一種良好的機(jī)制。通過繼承,一個類的定義可以基于另外一個已經(jīng)存在的類,分別將它們稱為“子類”和“父類”,“父類”又稱為“基類”。子類可以繼承父類的全部內(nèi)容,并在此基礎(chǔ)上,對父類表述的內(nèi)容加以擴(kuò)展或覆蓋。根據(jù)繼承關(guān)系的特性,繼承分為兩種主要形式:直接繼承和間接繼承單繼承和多繼承14運(yùn)輸工具發(fā)動機(jī)載重量速度

······

飛機(jī)飛行高度

······自動導(dǎo)航

······汽車運(yùn)輸······例:15多繼承特殊類的內(nèi)部情況在職研究生姓名······學(xué)號班級專業(yè)······職稱專業(yè)······在職單位············來自“人員”類來自“研究生”類來自“教職工”類本類中顯示定義例:人員姓名······教職工職稱專業(yè)······研究生學(xué)號班級專業(yè)······在職研究生在職單位

······163.多態(tài)(Po呆ly錦mo刃rp乞hi嘴sm)多態(tài)性是指在浮兩個花或多背個屬等于不天同類椅中同丸一函矛數(shù)名需對應(yīng)刻多個襖具有窯相似惰功能記的不判同函藥數(shù),櫻可以跳使用啟相同謀的調(diào)牢用方盤式來貨調(diào)用縱這些默具有誦不同咳功能竹的同演名函甘數(shù)。在面急向?qū)邢蟪碳y序設(shè)已計中凍,多筑態(tài)性移依托港于繼餃承性。利用類的溫繼承錯機(jī)制扎可以蛋形成背一個廁類的媽層次碼結(jié)構(gòu)價,把絹具有禁通用轉(zhuǎn)功能惠的消低息放殿在較渣高層受次,梨而具權(quán)體的枝實(shí)現(xiàn)寇放在喪較低籮層次叮,在板這些舟較低售層次積上生參成的坊對象勉能夠拐對通既用消換息作懼出不等同的筍響應(yīng)驚。17多邊形邊數(shù)頂點(diǎn)數(shù)據(jù)繪圖梯形*頂點(diǎn)數(shù)據(jù)高度底邊長*繪圖正多邊形*頂點(diǎn)數(shù)據(jù)*繪圖內(nèi)容墓提要面向諒對象天的基嶺本概比念面向病對象挑的基雨本特征為什帆么要之采用UM運(yùn)L建模18什么格是模徐型?模型被就是純對現(xiàn)梳實(shí)世韻界中附的事某物的卷一種朗抽象窄和模友擬,蔑以反鎖映事甜物的燦本質(zhì)朱特征護(hù)。模型顛提供了系閣統(tǒng)的隙骨架(Sk唉et朝ch)和藍(lán)允圖(Bl撥ue清pr芒in烤t)。為總?cè)藗兞阏故灸崃讼碉嫿y(tǒng)的徐各個言部分穿是如脂何組象織起防來的渠。一個占好的喪模型糕包括姐了那脈些有鐵廣泛文影響動的主緩要元它素,噸而忽每略那虜些與短給定默的抽悉象水凍平不央相關(guān)痛的次廊要元碎素。1920模型需是對宋現(xiàn)實(shí)帝的簡喝化模型巨應(yīng)具紋有的倒特征21抽象膝性:眨突出斷重點(diǎn)股方面徹,忽貴略無禮關(guān)緊漠要的幅細(xì)節(jié)雖??衫碚窠庑詽摚阂琢暧谑古捎谜邐Z理解技模型廈所表溉達(dá)的介系統(tǒng)艱(建前模的用目標(biāo)掉對象話)。精確蛋性:徒應(yīng)該謊準(zhǔn)確睬地表睡達(dá)系今統(tǒng)。確定吉性:漏能正費(fèi)確地延推導(dǎo)犬出與匹系統(tǒng)含有關(guān)天的各嬌種結(jié)享論。廉價賊性:霧對于氣構(gòu)造象和研棍究而疾言,堆比直馳接使甜用系屬統(tǒng)本子身更潑加便胃宜。為什養(yǎng)么要團(tuán)建模頸?22一個況基本宰的理茂由是姑:建雨模是葉為了滔能夠窄更好季地理替解正職在開綁發(fā)的逐系統(tǒng)腔。模型是對螺系統(tǒng)諸的一掠種抽獅象。抽朽象有助爹于了扮解系別統(tǒng)的遮本質(zhì)。模型商有助買于按秧照實(shí)際識情況鎖對系喜統(tǒng)進(jìn)怕行可視砍化。模型可以泊規(guī)約昆系統(tǒng)的結(jié)室構(gòu)和行為純。模型朱提供究了指購導(dǎo)我駛們創(chuàng)蛇建系證統(tǒng)的模板圍。模型陡對我慢們所追做的遼決策脆進(jìn)行貸文檔化。軟件思建模更技術(shù)繼是解徒?jīng)Q軟箏件開飾發(fā)復(fù)叛雜性星高的竹主要滴技術(shù)手段23選擇慕什么竹工具擺進(jìn)行騎建模壯?24在20世紀(jì)90年代機(jī)以前嫂,面向文對象找方法旦建模鑄領(lǐng)域巾的三材位巨例頭Ja槍me劈燕sRu匙mb救au蘋gh,Gr該ad味yBo教oc示h和Iv黎ar粒J臨ac族ob隙so葵n組合了當(dāng)膀時最運(yùn)好的面袋向?qū)n象軟棟件建川模方法線

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論