




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第二章第二章 程序設(shè)計(jì)基礎(chǔ)與算法程序設(shè)計(jì)基礎(chǔ)與算法主要內(nèi)容主要內(nèi)容2.1 程序設(shè)計(jì)方法與風(fēng)格程序設(shè)計(jì)方法與風(fēng)格2.2 結(jié)構(gòu)化程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)2.3 面向?qū)ο蟮某绦蛟O(shè)計(jì)面向?qū)ο蟮某绦蛟O(shè)計(jì)2.1 程序設(shè)計(jì)方法與風(fēng)格程序設(shè)計(jì)方法與風(fēng)格程序:程序:是具有特定功能的可執(zhí)行的指令的集合。是具有特定功能的可執(zhí)行的指令的集合。2.1.1 程序與程序設(shè)計(jì)方法程序與程序設(shè)計(jì)方法程序設(shè)計(jì)方法:程序設(shè)計(jì)方法:定義:定義:是指在設(shè)計(jì)程序過(guò)程中所采取的系統(tǒng)的研究觀點(diǎn)和方法。是指在設(shè)計(jì)程序過(guò)程中所采取的系統(tǒng)的研究觀點(diǎn)和方法。兩個(gè)階段:兩個(gè)階段:結(jié)構(gòu)化程序設(shè)計(jì)階段和面向?qū)ο蟮某绦蛟O(shè)計(jì)階段。結(jié)構(gòu)化程序設(shè)計(jì)階段和面向?qū)ο蟮?/p>
2、程序設(shè)計(jì)階段。2.1.2 程序設(shè)計(jì)風(fēng)格程序設(shè)計(jì)風(fēng)格定義:定義:是指編寫程序時(shí)所表現(xiàn)出的特點(diǎn)、習(xí)慣和邏輯思路。是指編寫程序時(shí)所表現(xiàn)出的特點(diǎn)、習(xí)慣和邏輯思路。 主導(dǎo)的程序設(shè)計(jì)風(fēng)格:主導(dǎo)的程序設(shè)計(jì)風(fēng)格:“清晰第一,效率第二清晰第一,效率第二”形成良好的程序設(shè)計(jì)風(fēng)格,應(yīng)考慮以下因素:形成良好的程序設(shè)計(jì)風(fēng)格,應(yīng)考慮以下因素:1.1.源程序文檔化源程序文檔化符號(hào)名的命名:符號(hào)名的命名:顧名思義。顧名思義。 程序注釋:程序注釋:幫助讀者理解程序。幫助讀者理解程序。 書寫格式:書寫格式:利用空行、縮進(jìn)等使程序?qū)哟畏置鳌⒈阌陂喿x。利用空行、縮進(jìn)等使程序?qū)哟畏置?、便于閱讀。 序言性注釋:位于每個(gè)程序開頭,給出程序
3、整體說(shuō)明。序言性注釋:位于每個(gè)程序開頭,給出程序整體說(shuō)明。功能性注釋:嵌入程序體之中,描述其后語(yǔ)句或程序功能。功能性注釋:嵌入程序體之中,描述其后語(yǔ)句或程序功能。2.2.數(shù)據(jù)說(shuō)明方法數(shù)據(jù)說(shuō)明方法數(shù)據(jù)說(shuō)明次序規(guī)范化:數(shù)據(jù)說(shuō)明次序規(guī)范化:各種不同種類的數(shù)據(jù)說(shuō)明的次序,各種不同種類的數(shù)據(jù)說(shuō)明的次序,最好固定下來(lái)。易于查找數(shù)據(jù)屬性。最好固定下來(lái)。易于查找數(shù)據(jù)屬性。 變量安排有序化:變量安排有序化:一個(gè)語(yǔ)句中需要聲明多個(gè)變量,應(yīng)按字一個(gè)語(yǔ)句中需要聲明多個(gè)變量,應(yīng)按字母順序排列。母順序排列。 使用注釋進(jìn)行說(shuō)明。使用注釋進(jìn)行說(shuō)明。 3.3.語(yǔ)句的結(jié)構(gòu)語(yǔ)句的結(jié)構(gòu)一行只寫一個(gè)語(yǔ)句一行只寫一個(gè)語(yǔ)句;首先保證程序正
4、確性首先保證程序正確性,再考慮提高速度。再考慮提高速度。盡可能使用庫(kù)函數(shù)盡可能使用庫(kù)函數(shù);避免不必要的轉(zhuǎn)移避免不必要的轉(zhuǎn)移;不修補(bǔ)不好程序不修補(bǔ)不好程序,最最好重新編寫。好重新編寫。4.4.輸入和輸出輸入和輸出輸入輸入/輸出數(shù)據(jù)是應(yīng)用程序最基本的功能。一個(gè)應(yīng)用程序輸出數(shù)據(jù)是應(yīng)用程序最基本的功能。一個(gè)應(yīng)用程序能否為用戶接受,常取決于它的輸入能否為用戶接受,常取決于它的輸入/輸出風(fēng)格。輸出風(fēng)格。考慮原則:考慮原則:輸入格式要簡(jiǎn)單輸入格式要簡(jiǎn)單;輸入一批數(shù)據(jù)時(shí)輸入一批數(shù)據(jù)時(shí),最好使用輸最好使用輸入結(jié)束標(biāo)志入結(jié)束標(biāo)志;應(yīng)保持輸入格式與輸入語(yǔ)句的一致性。應(yīng)保持輸入格式與輸入語(yǔ)句的一致性。 2.2 結(jié)構(gòu)化
5、程序設(shè)計(jì)結(jié)構(gòu)化程序設(shè)計(jì)2.2.1 結(jié)構(gòu)化程序設(shè)計(jì)的原則結(jié)構(gòu)化程序設(shè)計(jì)的原則自頂向下,逐步求精,模塊化,限制使用自頂向下,逐步求精,模塊化,限制使用goto語(yǔ)句。語(yǔ)句。P8 2.2.2 結(jié)構(gòu)化程序的基本結(jié)構(gòu)與特點(diǎn)結(jié)構(gòu)化程序的基本結(jié)構(gòu)與特點(diǎn) 當(dāng)型循環(huán):當(dāng)型循環(huán):先先判斷條件后執(zhí)行循環(huán)體(條件不成立判斷條件后執(zhí)行循環(huán)體(條件不成立,一次也不執(zhí)一次也不執(zhí)行循環(huán)體)行循環(huán)體) 。 直到型循環(huán):直到型循環(huán):先執(zhí)行循環(huán)體后判斷條件(無(wú)論條件是否成立先執(zhí)行循環(huán)體后判斷條件(無(wú)論條件是否成立, ,至至少執(zhí)行一次循環(huán)體)。少執(zhí)行一次循環(huán)體)。1966年年Bobra等提出了三種基本結(jié)構(gòu):順序、選擇和循環(huán)等提出了三種
6、基本結(jié)構(gòu):順序、選擇和循環(huán)結(jié)構(gòu),可以構(gòu)造任何復(fù)雜程序。結(jié)構(gòu),可以構(gòu)造任何復(fù)雜程序。 1.1.順序結(jié)構(gòu):順序結(jié)構(gòu):按照語(yǔ)句的自然順序,逐條語(yǔ)句執(zhí)行程序。按照語(yǔ)句的自然順序,逐條語(yǔ)句執(zhí)行程序。2.2.選擇結(jié)構(gòu):選擇結(jié)構(gòu):根據(jù)給定條件是否成立,決定執(zhí)行根據(jù)給定條件是否成立,決定執(zhí)行哪一個(gè)分哪一個(gè)分支的語(yǔ)句序列支的語(yǔ)句序列 。包括簡(jiǎn)單選擇和多分支選擇結(jié)構(gòu)。包括簡(jiǎn)單選擇和多分支選擇結(jié)構(gòu)。3.3.循環(huán)結(jié)構(gòu):循環(huán)結(jié)構(gòu):根據(jù)給定的條件,判斷是否重復(fù)執(zhí)行某一相根據(jù)給定的條件,判斷是否重復(fù)執(zhí)行某一相同的程序段。同的程序段。 A BAB順序結(jié)構(gòu)順序結(jié)構(gòu) 真真 假假 A BABTF選擇結(jié)構(gòu)選擇結(jié)構(gòu) 假真TF當(dāng)型循環(huán)當(dāng)
7、型循環(huán)假 真TF直到型循環(huán)直到型循環(huán)基本結(jié)構(gòu)的本質(zhì)屬性基本結(jié)構(gòu)的本質(zhì)屬性1.選用的控制結(jié)構(gòu)有且僅有一個(gè)入口和一個(gè)出口。選用的控制結(jié)構(gòu)有且僅有一個(gè)入口和一個(gè)出口。2.無(wú)死塊無(wú)死塊(永遠(yuǎn)執(zhí)行不到的操作塊永遠(yuǎn)執(zhí)行不到的操作塊)。結(jié)構(gòu)內(nèi)的每一部分都有機(jī)。結(jié)構(gòu)內(nèi)的每一部分都有機(jī)會(huì)被執(zhí)行到。會(huì)被執(zhí)行到。3.無(wú)死循環(huán)無(wú)死循環(huán)(無(wú)終止的循環(huán)無(wú)終止的循環(huán))。2.3 面向?qū)ο蟮某绦蛟O(shè)計(jì)面向?qū)ο蟮某绦蛟O(shè)計(jì)2.3.1 面向?qū)ο蟪绦蛟O(shè)計(jì)的優(yōu)點(diǎn)(面向?qū)ο蟪绦蛟O(shè)計(jì)的優(yōu)點(diǎn)(5點(diǎn))點(diǎn))傳統(tǒng)程序設(shè)計(jì)方法:傳統(tǒng)程序設(shè)計(jì)方法:核心是算法。不重視數(shù)據(jù)與操作的內(nèi)在核心是算法。不重視數(shù)據(jù)與操作的內(nèi)在聯(lián)系,求解空間與問(wèn)題空間不一致。聯(lián)系,求
8、解空間與問(wèn)題空間不一致。 面向?qū)ο蟪绦蛟O(shè)計(jì)方法:面向?qū)ο蟪绦蛟O(shè)計(jì)方法:核心是對(duì)象,對(duì)象是由數(shù)據(jù)和數(shù)據(jù)的操核心是對(duì)象,對(duì)象是由數(shù)據(jù)和數(shù)據(jù)的操 作組成的封裝體,與客觀實(shí)體直接對(duì)應(yīng)。作組成的封裝體,與客觀實(shí)體直接對(duì)應(yīng)?;驹恚夯驹恚喊船F(xiàn)實(shí)世界的方式思考問(wèn)題從而解決問(wèn)題。按現(xiàn)實(shí)世界的方式思考問(wèn)題從而解決問(wèn)題。 結(jié)構(gòu)化程序設(shè)計(jì)優(yōu)點(diǎn):結(jié)構(gòu)化程序設(shè)計(jì)優(yōu)點(diǎn):程序易于理解、使用和維護(hù);提高程序易于理解、使用和維護(hù);提高編程效率,降低開發(fā)成本。編程效率,降低開發(fā)成本。1.1.與人類習(xí)慣的思維方法一致與人類習(xí)慣的思維方法一致2.2.穩(wěn)定性好穩(wěn)定性好(1)現(xiàn)實(shí)世界中的實(shí)體是相對(duì)穩(wěn)定的,因此以對(duì)象為中心構(gòu)現(xiàn)實(shí)世界
9、中的實(shí)體是相對(duì)穩(wěn)定的,因此以對(duì)象為中心構(gòu)造的軟件系統(tǒng)也是比較穩(wěn)定的。造的軟件系統(tǒng)也是比較穩(wěn)定的。 (2)面向?qū)ο筌浖到y(tǒng)的結(jié)構(gòu)是根據(jù)問(wèn)題領(lǐng)域的模型建立起面向?qū)ο筌浖到y(tǒng)的結(jié)構(gòu)是根據(jù)問(wèn)題領(lǐng)域的模型建立起來(lái)的,而不是根據(jù)系統(tǒng)應(yīng)完成的功能的分解建立的。因此來(lái)的,而不是根據(jù)系統(tǒng)應(yīng)完成的功能的分解建立的。因此當(dāng)系統(tǒng)功能需求變化時(shí),不會(huì)引起軟件結(jié)構(gòu)的整體變化,當(dāng)系統(tǒng)功能需求變化時(shí),不會(huì)引起軟件結(jié)構(gòu)的整體變化, 3.3.可重用性好可重用性好軟件重用定義:軟件重用定義:指在不同的軟件開發(fā)過(guò)程中重復(fù)使用相同指在不同的軟件開發(fā)過(guò)程中重復(fù)使用相同或相似軟件元素的過(guò)程。或相似軟件元素的過(guò)程。 傳統(tǒng)軟件重用技術(shù):傳統(tǒng)軟
10、件重用技術(shù):利用標(biāo)準(zhǔn)函數(shù)庫(kù)。但難以適應(yīng)不同場(chǎng)利用標(biāo)準(zhǔn)函數(shù)庫(kù)。但難以適應(yīng)不同場(chǎng)合的不同需要,通常絕大多數(shù)函數(shù)都是新編的。合的不同需要,通常絕大多數(shù)函數(shù)都是新編的。(1)對(duì)象具有很強(qiáng)的自含性對(duì)象具有很強(qiáng)的自含性(數(shù)據(jù)和操作作為同等重要成分出數(shù)據(jù)和操作作為同等重要成分出現(xiàn)現(xiàn))和獨(dú)立性和獨(dú)立性(對(duì)象內(nèi)部與外部實(shí)現(xiàn)了隔離對(duì)象內(nèi)部與外部實(shí)現(xiàn)了隔離),對(duì)象提供了理,對(duì)象提供了理想的模塊化機(jī)制和可重用的軟件成分。想的模塊化機(jī)制和可重用的軟件成分。 (2)利用可重用軟件成分構(gòu)造新軟件系統(tǒng)時(shí),具有很大靈活利用可重用軟件成分構(gòu)造新軟件系統(tǒng)時(shí),具有很大靈活性。繼承機(jī)制使子類可以重用其父類的數(shù)據(jù)結(jié)構(gòu)和程序代性。繼承機(jī)制
11、使子類可以重用其父類的數(shù)據(jù)結(jié)構(gòu)和程序代碼,還可以修改和擴(kuò)充。碼,還可以修改和擴(kuò)充。 4.4.易于開發(fā)大型軟件產(chǎn)品:易于開發(fā)大型軟件產(chǎn)品:軟件成本降低軟件成本降低,整體質(zhì)量提高。整體質(zhì)量提高。 5.5.可維護(hù)性好:可維護(hù)性好:開發(fā)的軟件容易理解,穩(wěn)定性好,容易修開發(fā)的軟件容易理解,穩(wěn)定性好,容易修改,自然可維護(hù)性好。改,自然可維護(hù)性好。 2.3.2 基本概念(基本概念(5個(gè))個(gè))1.1.對(duì)象對(duì)象概念:概念:對(duì)象可以用來(lái)表示客觀世界中的任何實(shí)體對(duì)象可以用來(lái)表示客觀世界中的任何實(shí)體(一本書一本書,一一個(gè)人個(gè)人,讀者的一次借書讀者的一次借書,學(xué)生的一次選課學(xué)生的一次選課)。 組成:組成:由一組表示其靜
12、態(tài)特征的屬性和它可執(zhí)行的一組操作由一組表示其靜態(tài)特征的屬性和它可執(zhí)行的一組操作組成。組成。 面向?qū)ο蟪绦蛟O(shè)計(jì)方法中,對(duì)象是系統(tǒng)中用來(lái)描述客觀事面向?qū)ο蟪绦蛟O(shè)計(jì)方法中,對(duì)象是系統(tǒng)中用來(lái)描述客觀事物的一個(gè)實(shí)體,是構(gòu)成系統(tǒng)的一個(gè)基本單位物的一個(gè)實(shí)體,是構(gòu)成系統(tǒng)的一個(gè)基本單位(一個(gè)窗口,一一個(gè)窗口,一個(gè)菜單個(gè)菜單)靜態(tài)屬性:靜態(tài)屬性:對(duì)象包含的信息對(duì)象包含的信息(對(duì)象張三的屬性對(duì)象張三的屬性:姓名、年齡、性姓名、年齡、性別別 )。不同對(duì)象的同一屬性可以具有相同或不同的屬性值。不同對(duì)象的同一屬性可以具有相同或不同的屬性值。 動(dòng)態(tài)行為動(dòng)態(tài)行為( (可執(zhí)行的操作可執(zhí)行的操作) ):描述了:描述了對(duì)象執(zhí)行等功
13、能。對(duì)象執(zhí)行等功能。 舉例:舉例:一個(gè)一個(gè)對(duì)象對(duì)象(一個(gè)窗口一個(gè)窗口)窗口屬性:窗口屬性:大小、顏色、屏幕上位置等。大小、顏色、屏幕上位置等。操作:打開、關(guān)閉、縮放等操作:打開、關(guān)閉、縮放等 對(duì)象是由描述對(duì)象屬性的數(shù)據(jù)和施加于這些數(shù)據(jù)之上的所對(duì)象是由描述對(duì)象屬性的數(shù)據(jù)和施加于這些數(shù)據(jù)之上的所有操作封裝的統(tǒng)一體。有操作封裝的統(tǒng)一體?;咎攸c(diǎn)基本特點(diǎn)(5(5個(gè)個(gè)) ):(1)標(biāo)識(shí)唯一性:對(duì)象可以區(qū)分的標(biāo)識(shí)唯一性:對(duì)象可以區(qū)分的(由其內(nèi)在本質(zhì)區(qū)分由其內(nèi)在本質(zhì)區(qū)分)(2)分類性分類性 (3)多態(tài)性多態(tài)性(4)封裝性:從外面只能看到對(duì)象的外部特性,對(duì)象內(nèi)部處理能封裝性:從外面只能看到對(duì)象的外部特性,對(duì)象
14、內(nèi)部處理能力的實(shí)行和內(nèi)部狀態(tài),對(duì)外是不可見的。力的實(shí)行和內(nèi)部狀態(tài),對(duì)外是不可見的。(5)模塊獨(dú)立性好:對(duì)象內(nèi)部各元素彼此結(jié)合緊密,內(nèi)聚性強(qiáng)。模塊獨(dú)立性好:對(duì)象內(nèi)部各元素彼此結(jié)合緊密,內(nèi)聚性強(qiáng)。2.2.類和實(shí)例類和實(shí)例定義:定義:類是具有共同屬性、共同方法的對(duì)象的集合類是具有共同屬性、共同方法的對(duì)象的集合(將屬性、將屬性、操作相似的對(duì)象歸為類操作相似的對(duì)象歸為類 )。一個(gè)對(duì)象則是其對(duì)應(yīng)類的一個(gè)實(shí)。一個(gè)對(duì)象則是其對(duì)應(yīng)類的一個(gè)實(shí)例。例。 組成:組成:類是關(guān)于對(duì)象性質(zhì)的描述。包括一組數(shù)據(jù)屬性和在數(shù)類是關(guān)于對(duì)象性質(zhì)的描述。包括一組數(shù)據(jù)屬性和在數(shù)據(jù)上的一組合法操作。據(jù)上的一組合法操作。 舉例:舉例:(1)
15、Integer是一個(gè)整數(shù)類是一個(gè)整數(shù)類,任何整數(shù)都是整數(shù)類的對(duì)象。任何整數(shù)都是整數(shù)類的對(duì)象。123是是Integer的一個(gè)實(shí)例。的一個(gè)實(shí)例。(2)三個(gè)不同對(duì)象三個(gè)不同對(duì)象(三個(gè)圓三個(gè)圓),同一類事物,用,同一類事物,用Circle類定義。類定義。相同屬性相同屬性:圓心坐標(biāo)圓心坐標(biāo)(紅、綠、黃紅、綠、黃),顏色顏色,半徑半徑(1cm、 3cm、 4cm)相同操作相同操作:顯示自己顯示自己,放大縮小半徑放大縮小半徑,移動(dòng)位置等。移動(dòng)位置等。3.3.消息消息定義:定義:是一個(gè)實(shí)例與另一個(gè)實(shí)例之間傳遞的信息,它請(qǐng)求對(duì)是一個(gè)實(shí)例與另一個(gè)實(shí)例之間傳遞的信息,它請(qǐng)求對(duì)象執(zhí)行某一處理或回答某一要求的信息。象執(zhí)
16、行某一處理或回答某一要求的信息。 作用:作用:面向?qū)ο蟮能浖到y(tǒng)中,是通過(guò)對(duì)象之間彼此協(xié)作來(lái)面向?qū)ο蟮能浖到y(tǒng)中,是通過(guò)對(duì)象之間彼此協(xié)作來(lái)完成任務(wù)的,對(duì)象間的相互合作需要一個(gè)機(jī)制完成任務(wù)的,對(duì)象間的相互合作需要一個(gè)機(jī)制消息。作用消息。作用類似于函數(shù)調(diào)用。類似于函數(shù)調(diào)用。 組成:組成:接收接收(消息消息)對(duì)象名稱對(duì)象名稱消息名消息名參數(shù)參數(shù)(可以為空可以為空)消息傳遞:消息傳遞:發(fā)送發(fā)送(消息消息)對(duì)象的觸發(fā)操作產(chǎn)生輸出結(jié)果,傳送對(duì)象的觸發(fā)操作產(chǎn)生輸出結(jié)果,傳送至接收對(duì)象,引發(fā)接收對(duì)象一系列的操作。至接收對(duì)象,引發(fā)接收對(duì)象一系列的操作。 舉例:舉例:一輛汽車一輛汽車( (一個(gè)對(duì)象一個(gè)對(duì)象) )具
17、有行駛操作。如需要汽車以具有行駛操作。如需要汽車以8080公里時(shí)速行駛。需給汽車兩個(gè)消息:公里時(shí)速行駛。需給汽車兩個(gè)消息:“行駛行駛”和和“時(shí)速時(shí)速8080公公里里”4.4.繼承繼承定義:定義:在在已有類的基礎(chǔ)上創(chuàng)建一個(gè)新類的定義技術(shù)。可以直已有類的基礎(chǔ)上創(chuàng)建一個(gè)新類的定義技術(shù)??梢灾苯荧@得已有的性質(zhì)和特征,而不必重復(fù)定義它們。接獲得已有的性質(zhì)和特征,而不必重復(fù)定義它們。 類組成層次結(jié)構(gòu)的系統(tǒng):類組成層次結(jié)構(gòu)的系統(tǒng):一個(gè)類上層可以有父類一個(gè)類上層可以有父類(基類基類),下,下層有子類層有子類(派生類派生類)。一個(gè)類直接繼承其父類的描述或特性,。一個(gè)類直接繼承其父類的描述或特性,子類自動(dòng)地父類的
18、數(shù)據(jù)和方法。子類自動(dòng)地父類的數(shù)據(jù)和方法。 舉例:舉例:“人人”類類(屬性屬性:身高、體重、性別等;操作身高、體重、性別等;操作:吃飯、工吃飯、工作等作等) ,派生出,派生出“中國(guó)人中國(guó)人”類和類和“美國(guó)人美國(guó)人”類。繼承人類的屬類。繼承人類的屬性和操作,并允許擴(kuò)充出新的特性性和操作,并允許擴(kuò)充出新的特性 分類:分類:5.5.多態(tài)性多態(tài)性單繼承單繼承 :一個(gè)類只允許有一個(gè)父類。:一個(gè)類只允許有一個(gè)父類。 多重繼承多重繼承 :一個(gè)類允許有多個(gè)父類。功能更強(qiáng),使用更方便。:一個(gè)類允許有多個(gè)父類。功能更強(qiáng),使用更方便。 定義:定義:相同的消息為不同的對(duì)象接收時(shí)可導(dǎo)致完全不同的行相同的消息為不同的對(duì)象接
19、收時(shí)可導(dǎo)致完全不同的行動(dòng),該現(xiàn)象稱為多態(tài)性。動(dòng),該現(xiàn)象稱為多態(tài)性。 優(yōu)點(diǎn):優(yōu)點(diǎn):相似對(duì)象可共享程序代碼和數(shù)據(jù)結(jié)構(gòu),提高軟件可重用性。相似對(duì)象可共享程序代碼和數(shù)據(jù)結(jié)構(gòu),提高軟件可重用性。 開發(fā)新系統(tǒng)時(shí)不必從頭開始,可以繼承已有系統(tǒng)的功能或從開發(fā)新系統(tǒng)時(shí)不必從頭開始,可以繼承已有系統(tǒng)的功能或從類庫(kù)中選取需要的類。類庫(kù)中選取需要的類。 舉例:舉例:“動(dòng)物動(dòng)物”類有類有“叫叫”的行的行為為 。對(duì)象對(duì)象“貓貓”接收接收“叫叫”的消息時(shí),叫的行為是的消息時(shí),叫的行為是“喵喵喵喵” 。對(duì)象對(duì)象“狗狗”接收接收“叫叫”的消息時(shí),叫的行為是的消息時(shí),叫的行為是“汪汪汪汪” 。優(yōu)點(diǎn):優(yōu)點(diǎn):增加了靈活性,提高了軟件
20、的可重用性和可擴(kuò)充性增加了靈活性,提高了軟件的可重用性和可擴(kuò)充性 。利用多態(tài)性,用戶能夠發(fā)送一般形式的消息,而將所有細(xì)節(jié)利用多態(tài)性,用戶能夠發(fā)送一般形式的消息,而將所有細(xì)節(jié)都由接收都由接收(消息消息)的對(duì)象實(shí)現(xiàn)。的對(duì)象實(shí)現(xiàn)。完完第二章第二章 習(xí)題習(xí)題選擇:選擇:11題題填空:填空:12題題1.1.下列關(guān)于注釋的說(shuō)法正確的是下列關(guān)于注釋的說(shuō)法正確的是( )( )A)A)序言性注釋應(yīng)嵌入源程序內(nèi)部序言性注釋應(yīng)嵌入源程序內(nèi)部B)B)每一行程序都要加注釋每一行程序都要加注釋C)C)修改程序也要修改注釋修改程序也要修改注釋D)D)功能性注釋可以說(shuō)明數(shù)據(jù)狀態(tài)功能性注釋可以說(shuō)明數(shù)據(jù)狀態(tài)C2.2.影響輸入輸出
21、風(fēng)格的因素不包括影響輸入輸出風(fēng)格的因素不包括( )( )A)A)數(shù)據(jù)狀態(tài)數(shù)據(jù)狀態(tài) B)B)通信方式通信方式C)C)用戶經(jīng)驗(yàn)用戶經(jīng)驗(yàn) D)D)輸入輸出設(shè)備輸入輸出設(shè)備A3.3.結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是結(jié)構(gòu)化程序設(shè)計(jì)主要強(qiáng)調(diào)的是( )( )A)A)程序的效率程序的效率 B)B)程序的可讀性程序的可讀性C)C)程序的執(zhí)行性程序的執(zhí)行性 D)D)程序的易用性程序的易用性B4.4.結(jié)構(gòu)化程序設(shè)計(jì)所規(guī)定的三種基本控制結(jié)構(gòu)是結(jié)構(gòu)化程序設(shè)計(jì)所規(guī)定的三種基本控制結(jié)構(gòu)是( )( )A)A)輸入、處理、輸出輸入、處理、輸出 B)B)樹形、網(wǎng)形、環(huán)形樹形、網(wǎng)形、環(huán)形C)C)順序、選擇、循環(huán)順序、選擇、循環(huán) D)D)
22、主程序、子程序、函數(shù)主程序、子程序、函數(shù)C5.5.結(jié)構(gòu)化程序設(shè)計(jì)的一種基本原則是結(jié)構(gòu)化程序設(shè)計(jì)的一種基本原則是( )( )A)A)篩選法篩選法 B)B)遞歸法遞歸法 C)C)歸納法歸納法 D)D)逐步求精原則逐步求精原則D6.6.結(jié)構(gòu)化程序設(shè)計(jì)是一種面向結(jié)構(gòu)化程序設(shè)計(jì)是一種面向( )( )的設(shè)計(jì)方法的設(shè)計(jì)方法A)A)模塊模塊 B)B)程序程序 C)C)結(jié)構(gòu)結(jié)構(gòu) D)D)過(guò)程過(guò)程D7.7.輸入輸出風(fēng)格應(yīng)盡可能是輸入輸出風(fēng)格應(yīng)盡可能是( )( )A)A)符合程序的格式符合程序的格式 B)B)簡(jiǎn)單明了簡(jiǎn)單明了C)C)方便用戶的使用方便用戶的使用 D)D)符合數(shù)據(jù)的定義符合數(shù)據(jù)的定義C8.8.軟件部件
23、的內(nèi)部實(shí)現(xiàn)與外部可訪問(wèn)性分離是指軟件的軟件部件的內(nèi)部實(shí)現(xiàn)與外部可訪問(wèn)性分離是指軟件的( )( )A)A)繼承性繼承性 B)B)多態(tài)性多態(tài)性 C)C)共享性共享性 D)D)封裝性封裝性D9.9.下面關(guān)于對(duì)象概念描述錯(cuò)誤的是下面關(guān)于對(duì)象概念描述錯(cuò)誤的是( )( )A)A)任何對(duì)象都必須有繼承性任何對(duì)象都必須有繼承性 B)B)對(duì)象是屬性和方法的封裝體對(duì)象是屬性和方法的封裝體C)C)對(duì)象間的通信靠消息傳遞對(duì)象間的通信靠消息傳遞 D)D)操作是對(duì)對(duì)象的動(dòng)態(tài)性屬性操作是對(duì)對(duì)象的動(dòng)態(tài)性屬性A10.10.在面向?qū)ο蠓椒ㄖ校粋€(gè)對(duì)象請(qǐng)求另一個(gè)對(duì)象為其服在面向?qū)ο蠓椒ㄖ校粋€(gè)對(duì)象請(qǐng)求另一個(gè)對(duì)象為其服務(wù)的方式是通過(guò)發(fā)送務(wù)的方式是通過(guò)發(fā)送( )( )A)A)命令命令 B)B)參數(shù)參數(shù) C)C)調(diào)用語(yǔ)句調(diào)用語(yǔ)句 D)D)消息消息D11.11.信息隱蔽的概念與下列哪種概念相關(guān)信息隱蔽的概念與下列哪種概念相關(guān)( )( )A)A)軟件結(jié)構(gòu)定義軟件結(jié)構(gòu)定義 B)B)模塊類型劃分模塊類型劃分 C)C)模塊獨(dú)立性模塊獨(dú)立性 D)D)模塊耦合度模塊耦合度C1.為了程序結(jié)構(gòu)清
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 物理-福建省莆田市2025屆高中畢業(yè)班第二次教學(xué)質(zhì)量檢測(cè)試卷(莆田二檢)試題和答案
- 歷史-陜西省安康市2025屆高三下學(xué)期第二次質(zhì)量聯(lián)考(安康二模)試題和答案
- 除草布施工方案
- 廣東省肇慶市2024-2025年高中地理 農(nóng)業(yè)和工業(yè)練習(xí)評(píng)講教學(xué)實(shí)錄 新人教版必修2
- 個(gè)人瓷磚買賣合同范例
- 供貨茶葉合同范例
- 關(guān)于定金合同范例
- 公司合作加盟合同范例
- 構(gòu)建班級(jí)共同價(jià)值觀的策略計(jì)劃
- 學(xué)生課外閱讀推廣活動(dòng)計(jì)劃
- 基于實(shí)驗(yàn)教學(xué)培養(yǎng)學(xué)生物理核心素養(yǎng)的研究
- 2023年漢字聽寫大會(huì)漢字聽寫知識(shí)競(jìng)賽題庫(kù)及答案
- 退化林修復(fù)投標(biāo)方案
- 鉆孔樁水下混凝土灌注記錄(自動(dòng)生成)1
- 切削刀具及其材料課件
- 穿刺手術(shù)導(dǎo)航定位系統(tǒng)(CQZ2201581)
- 小學(xué)心理健康教育-想法變一變心情換一換教學(xué)課件設(shè)計(jì)
- 機(jī)械加工工藝過(guò)程卡片(實(shí)例)
- 足球腳內(nèi)側(cè)傳球 課件
- 甲亢的中醫(yī)辨證施治
- 統(tǒng)編教材二年級(jí)下冊(cè)“寫話”編排特色解析
評(píng)論
0/150
提交評(píng)論