




下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第一章緒論C++語(yǔ)言程序設(shè)計(jì)本章主要內(nèi)容面面象的語(yǔ)言象的方法1.1.1
計(jì)算機(jī)程序計(jì)算機(jī)的工作是用程序來(lái)控制的程序是指令的集合。指令是計(jì)算機(jī)可以識(shí)別令。1.1計(jì)算機(jī)語(yǔ)言的發(fā)展機(jī)器語(yǔ)言與匯編語(yǔ)言由計(jì)算機(jī)硬件系統(tǒng)可以識(shí)別的二進(jìn)制指令組成的語(yǔ)言稱為機(jī)器語(yǔ)言。計(jì)算機(jī)發(fā)展的初期,工程師們只能用機(jī)器語(yǔ)言來(lái)編寫程序。這一階段,在人類的自然語(yǔ)言和計(jì)算機(jī)編程語(yǔ)言之間存在著巨大的鴻溝。匯編語(yǔ)言將機(jī)器指令
為一些可以被人讀懂的助記符,如ADD、SUB等。此時(shí)編程語(yǔ)言與人類自然語(yǔ)言間的鴻溝略有縮小,但仍與人類的思維相差甚遠(yuǎn)。因?yàn)樗某橄髮哟翁停绦騿T需要考慮大量的機(jī)器細(xì)節(jié)。計(jì)算機(jī)語(yǔ)言的發(fā)展高級(jí)語(yǔ)言高級(jí)語(yǔ)言
了機(jī)器的細(xì)節(jié),提高了語(yǔ)言的抽象層次,程序中可以采用具有一定涵義的數(shù)據(jù)命名和容易理解的執(zhí)行語(yǔ)句。這使得在書寫程序時(shí)可以聯(lián)系到程序所描述的具體事物。計(jì)算機(jī)語(yǔ)言的發(fā)展1. 1.2
面
象的語(yǔ)言出發(fā)點(diǎn):更直接地描述客觀世界中存在的事物
(對(duì)象)以及它們之間的關(guān)系。特點(diǎn):是高級(jí)語(yǔ)言。將客觀事物看作具有屬性和行為的對(duì)象。通過(guò)抽象找出同一類對(duì)象的共同屬性和行為,形成類。通過(guò)類的繼承與多態(tài)實(shí)現(xiàn)代碼重用7抽象實(shí)例——鐘表數(shù)據(jù)抽象(時(shí)、分、秒)int
Hour, int
Minute, int
Second代碼抽象(設(shè)置、顯示時(shí)間)SetTime(),
ShowTime()8抽象實(shí)例——鐘表類class
Clock{public:void
SetTime(int
NewH, int
NewM,int
NewS);void
ShowTime();private:int
Hour,Minute,Second;};9繼承與派生問(wèn)題舉例工具車轎車面包車小汽車卡車旅行車汽車交通工具類的繼承與派生10繼承與派生問(wèn)題舉例動(dòng)物猴子貓鳥獅子虎獵豹類的繼承與派生11繼承與派生問(wèn)題舉例圓矩形幾何形狀類的繼承與派生12繼承與派生問(wèn)題舉例技術(shù)銷售經(jīng)理管理銷售雇員類的繼承與派生1.1.2
面象的語(yǔ)言優(yōu)點(diǎn):使程序能夠比較直接地反映問(wèn)題域的本來(lái)面目,開發(fā)能夠利用人類認(rèn)識(shí)事物所采用的一般思維方法來(lái)進(jìn)行開發(fā)。1.2.1程序設(shè)計(jì)方法的發(fā)展歷程(一)——面向過(guò)程的結(jié)構(gòu)化程序設(shè)計(jì)方法程序的目的:用于數(shù)學(xué)計(jì)算主要工作:設(shè)計(jì)求解問(wèn)題的過(guò)程缺點(diǎn):對(duì)于龐大、復(fù)雜的程序難以開發(fā)和1.2
(Structured
Programming---SP)面向?qū)ο蟮姆椒ㄊ褂肧P方法設(shè)計(jì)程序的步驟數(shù)據(jù)數(shù)據(jù)處理結(jié)果輸出1.2.1程序設(shè)計(jì)方法的發(fā)展歷程(一)——面向過(guò)程的結(jié)構(gòu)化程序設(shè)計(jì)方法設(shè)計(jì)思路自頂向下、逐步求精。采用模塊分解與功能抽象,自頂向下、分而治之。程序結(jié)構(gòu):按功能劃分為若干個(gè)基本模塊,形成一個(gè)樹狀結(jié)構(gòu)。各模塊間的關(guān)系盡可能簡(jiǎn)單,功能上相對(duì)獨(dú)立;每一模塊 均是由順序、選擇和循環(huán)三種基本結(jié)構(gòu)組成。–其模塊化實(shí)現(xiàn)的具體方法是使用子程序(函數(shù))。1.2面向?qū)ο蟮姆椒?.2.1程序設(shè)計(jì)方法的發(fā)展歷程(一)——面向過(guò)程的結(jié)構(gòu)化程序設(shè)計(jì)方法優(yōu)點(diǎn):有效地將一個(gè)較復(fù)雜的程序系統(tǒng)設(shè)計(jì)任務(wù)分解成許多易于控制和處理的子任務(wù),便于開發(fā)和
。模塊1程序模塊2模塊n模塊2.1
模塊2.2
模塊2.m1.2面向?qū)ο蟮姆椒?81.2.1程序設(shè)計(jì)方法的發(fā)展歷程(一)——面向過(guò)程的結(jié)構(gòu)化程序設(shè)計(jì)方法缺點(diǎn):可重用性差、數(shù)據(jù)安全性差、難以開發(fā)大型
圖形界面的應(yīng)用把數(shù)據(jù)和處理數(shù)據(jù)的過(guò)程分離為相互獨(dú)立的實(shí)體。當(dāng)數(shù)據(jù)結(jié)構(gòu)改變時(shí),所有相關(guān)的處理過(guò)程都要進(jìn)行相應(yīng)的修改。每一種相對(duì)于老問(wèn)題的新方法都要帶來(lái)額外的開銷。圖形用戶界面的應(yīng)用程序,很難用過(guò)程來(lái)描述,開發(fā)和
也都很
。1.2面向?qū)ο蟮姆椒?.2.1程序設(shè)計(jì)方法的發(fā)展歷程(二)——面
象的方法(Object-Oriented
Programming
----OOP)將數(shù)據(jù)及對(duì)數(shù)據(jù)的操作方法封裝在一起,作為一個(gè)相互依存、不可分離的整體——對(duì)象。對(duì)同類型對(duì)象抽象出其共性,形成類。類通過(guò)一個(gè)簡(jiǎn)單的外部接口,與外界。對(duì)象與對(duì)象之間通過(guò)消息進(jìn)行通訊。1.2面向?qū)ο蟮姆椒?1抽象實(shí)例——鐘表類class
Clock{public://外部接口void
SetTime(int
NewH, int
NewM,int
NewS);void
ShowTime();private:int
Hour,Minute,Second;};Clock
myClock;//對(duì)象返回在OOP中,將“對(duì)象”作為系統(tǒng)中最基本的運(yùn)行實(shí)體,整個(gè)程序即由各種不同類型的對(duì)象組成,各對(duì)象既是一個(gè)獨(dú)立的實(shí)體,又可通過(guò)消息相互作用,對(duì)象中的方法決定要向哪個(gè)對(duì)象發(fā)消息、發(fā)什么消息以及收到消息時(shí)如何進(jìn)行處理等。方法數(shù)據(jù)消息消息1.2.1程序設(shè)計(jì)方法的發(fā)展歷程(二)——面
象的方法優(yōu)點(diǎn):程序模塊間的關(guān)系更為簡(jiǎn)單,程序模塊的獨(dú)立性、數(shù)據(jù)的安全性就有了良好的保障。通過(guò)繼承與多態(tài)性,可以大大提高程序的可重用性,使得的開發(fā)和都更為方便。面向?qū)ο蟮姆椒?4現(xiàn)實(shí)生活中的多態(tài)機(jī)的控制臺(tái)1.2.2面象的基本概念——對(duì)象一般意義上的對(duì)象:是現(xiàn)實(shí)世界中一個(gè)實(shí)際存在的事物。可以是有形的(比如一輛汽車),也可以是無(wú)形的(比如一項(xiàng)計(jì)劃)。是構(gòu)成世界的一個(gè)獨(dú)立單位,具有:靜態(tài)特征:可以用某種數(shù)據(jù)來(lái)描述動(dòng)態(tài)特征:對(duì)象所表現(xiàn)的行為或具有的功能面向?qū)ο蟮姆椒?.2.2面象的基本概念——對(duì)象(Object)面
象方法中的對(duì)象:–
是系統(tǒng)中
客觀事物的一個(gè)實(shí)體,它是用來(lái)構(gòu)成系統(tǒng)的一個(gè)基本單位。對(duì)象由一組屬性和一組行為構(gòu)成。屬性:行為:對(duì)象靜態(tài)特征的數(shù)據(jù)項(xiàng)。對(duì)象動(dòng)態(tài)特征的操作序列。面向?qū)ο蟮姆椒?.2.2面象的基本概念——類分類——人類通常的思維方法分類所依據(jù)的原則——抽象忽略事物的非本質(zhì)特征,只注意那些與當(dāng)前目標(biāo)有關(guān)的本質(zhì)特征,從而找出事物的共性,把具有共同性質(zhì)的事物劃分為一類,得出一個(gè)抽象的概念。例如,石頭、樹木、汽車、房屋等都是人們?cè)陂L(zhǎng)期的生產(chǎn)和生活實(shí)踐中抽象出的概念。面向?qū)ο蟮姆椒?.2.2面象的基本概念——類(Class)面
象方法中的"類"具有相同屬性和行為的一組對(duì)象的集合為屬于該類的全部對(duì)象提供了抽象的描述,包括屬性和行為兩個(gè)主要部分。類與對(duì)象的關(guān)系:猶如模具與鑄件之間的關(guān)系,是抽象與具體的關(guān)系一個(gè)屬于某類的對(duì)象稱為該類的一個(gè)實(shí)例。面向?qū)ο蟮姆椒?.2.2面象的基本概念——封裝(Encapsulation)一個(gè)獨(dú)立的系把對(duì)象的屬性和行為結(jié)
統(tǒng)單元。盡可能隱蔽對(duì)象的
細(xì)節(jié)。對(duì)外形成一個(gè)邊界(或者說(shuō)一道屏障),只保留有限的對(duì)外接口(公用方法)使之與外部發(fā)生聯(lián)系。例如面向?qū)ο蟮姆椒?.2.2面象的基本概念——繼承(Inheritance)繼承對(duì)于復(fù)用有著重要意義,是面象技術(shù)能夠提高開發(fā)效率的重要原因之一。定義:特殊類的對(duì)象擁有其一般類的全部屬性與服務(wù),稱作特殊類對(duì)一般類的繼承。例如:將輪船作為一個(gè)一般類,客輪便是一個(gè)特殊類。面向?qū)ο蟮姆椒?.2.2面象的基本概念——多態(tài)性(Polymorphism)多態(tài)是指在一般類中定義的屬性或行
為,被特殊類繼承之后,可以具有不同的數(shù)據(jù)類型或
不同的行為。這使得同一個(gè)屬性或行為在一般類及其各個(gè)特殊類中具有不同的語(yǔ)義。例如:加號(hào)+->實(shí)數(shù)的加法:2+3=5->字符串的加法:“123”+“abc”=“123abc”面向?qū)ο蟮姆椒?2面象的工程面
象的
工程是面
象方法在
工程領(lǐng)域的全面應(yīng)用。它包括:面 象的分析(OOA)面 象的設(shè)計(jì)(OOD)面 象的編程(OOP)面 象的測(cè)試(OOT)面 象的
(OOSM)1.3面向?qū)ο蟮能浖_發(fā)33系統(tǒng)分析系統(tǒng)分析階段應(yīng)該扼要精確地抽象出系統(tǒng)必須做什么,但是不關(guān)心如何去實(shí)現(xiàn)。面象的系統(tǒng)分析,直接用問(wèn)題域中客觀存在的事物建立模型中的對(duì)象,對(duì)單個(gè)事物及事物之間的關(guān)系,都保留他們的原貌,不做轉(zhuǎn)換,也不打破原有界限而重新組合,因此能夠很好地
客觀事物。面向?qū)ο蟮能浖_發(fā)34設(shè)計(jì)針對(duì)系統(tǒng)的一個(gè)具體實(shí)現(xiàn)運(yùn)用面象的方法。其中包括兩方面的工作:把OOA模型直接搬到OOD,作為OOD的一部分針對(duì)具體實(shí)現(xiàn)中的人機(jī)界面、數(shù)據(jù) 、任務(wù)管理等因素補(bǔ)充一些與實(shí)現(xiàn)有關(guān)的部分。面向?qū)ο蟮能浖_發(fā)35編程OOP工作就是用一種面象的編程語(yǔ)言把OOD模型中的每個(gè)成分書寫出來(lái),是面象的開發(fā)最終的重要階段。面向?qū)ο蟮能浖_發(fā)36測(cè)試測(cè)試的任務(wù)是發(fā)現(xiàn)
中的錯(cuò)誤。在面
象的
測(cè)試中繼續(xù)運(yùn)用面象的概念與原則來(lái)組織測(cè)試,以對(duì)象的類作為基本測(cè)試單位,可以更準(zhǔn)確的發(fā)現(xiàn)程序錯(cuò)誤并提高測(cè)試效率。面向?qū)ο蟮能浖_發(fā)37將
交付使用后,工作并沒(méi)有完結(jié),還要根據(jù)的運(yùn)行情況和用戶的需求,不斷改進(jìn)系統(tǒng)。使用面象的方法開發(fā)的,其程序與問(wèn)題域是一致的,因此,在維護(hù)階段運(yùn)用面象的方法可以大大提高的效率。面向?qū)ο蟮能浖_發(fā)源程序:用源語(yǔ)言寫的,有待翻譯的程序目標(biāo)程序:也稱為"結(jié)果程序",是源程序通過(guò)翻譯程序加工以后所生成的程序。翻譯程序:是指一個(gè)把源程序翻譯成等價(jià)的目標(biāo)程序的程序。1.4
c++語(yǔ)言的程序開發(fā)過(guò)程基本術(shù)語(yǔ)源程序(.cpp)翻譯程序目標(biāo)
程序(.obj)用c++寫的與源程序同名——三種不同類型的翻譯程序匯編程序:其任務(wù)是把用匯編語(yǔ)言寫成的源程序,翻譯成機(jī)器語(yǔ)言形式的目標(biāo)程序。編譯程序:若源程序是用高級(jí)程序設(shè)計(jì)語(yǔ)言所寫,經(jīng)翻譯程序加工生成目標(biāo)程序,那么,該翻譯程序就稱為"編譯程序"。1.4
c++語(yǔ)言的程序開發(fā)過(guò)程解釋
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 公司烤肉策劃方案
- 公司組織烤肉派對(duì)活動(dòng)方案
- 公司組織暖心小活動(dòng)方案
- 公司春游一日游策劃方案
- 公司游園會(huì)年會(huì)策劃方案
- 公司暖冬捐衣活動(dòng)方案
- 公司職場(chǎng)媽媽活動(dòng)方案
- 公司甜品活動(dòng)方案
- 公司春節(jié)抽獎(jiǎng)活動(dòng)方案
- 公司線下沙龍策劃方案
- 2025譯林版高中英語(yǔ)高考復(fù)習(xí)必背全七冊(cè)單詞表(精校打印)
- 撬裝加油站承包合同協(xié)議書
- 國(guó)家開放大學(xué)行管本科《政府經(jīng)濟(jì)學(xué)》期末考試總題庫(kù)2025春期考試版
- 《自發(fā)性腹膜炎》課件
- 2024年03月廣東2024年珠海華潤(rùn)銀行社會(huì)招考(33)筆試歷年參考題庫(kù)附帶答案詳解
- 14-2《變形記》(節(jié)選)公開課一等獎(jiǎng)創(chuàng)新教學(xué)設(shè)計(jì)統(tǒng)編版高中語(yǔ)文必修下冊(cè)
- 卸料平臺(tái)培訓(xùn)課件
- 2025年陽(yáng)光財(cái)產(chǎn)保限公司招聘筆試參考題庫(kù)含答案解析
- 監(jiān)理工作廉潔自律制度及措施
- 公司法知識(shí)競(jìng)賽考試題庫(kù)100題(含答案)
- 物業(yè)管理項(xiàng)目主動(dòng)撤場(chǎng)
評(píng)論
0/150
提交評(píng)論