freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

面向?qū)ο笈c面向過程的區(qū)別(編輯修改稿)

2024-09-01 16:38 本頁面
 

【文章內(nèi)容簡介】 每個對象與一組數(shù)據(jù)相關(guān),而這組數(shù)據(jù)的類型在類中定義。因此,一個類就是具有相同類型的對象的抽象。例如,芒果、蘋果和桔子都是fruit類的對象。類是用戶定義的數(shù)據(jù)類型,但在一個程序設(shè)計語言中,它和內(nèi)建的數(shù)據(jù)類型行為相同。比如創(chuàng)建一個類對象的語法和創(chuàng)建一個整數(shù)對象的語法一模一樣。  數(shù)據(jù)抽象和封裝  把數(shù)據(jù)和函數(shù)包裝在一個單獨的單元(稱為類)的行為稱為封裝。數(shù)據(jù)封裝是類的最典型特點。數(shù)據(jù)不能被外界訪問,只能被封裝在同一個類中的函數(shù)訪問。這些函數(shù)提供了對象數(shù)據(jù)和程序之間的接口。避免數(shù)據(jù)被程序直接訪問的概念被稱為數(shù)據(jù)隱藏?! 〕橄笾竷H表現(xiàn)核心的特性而不描述背景細(xì)節(jié)的行為。類使用了抽象的概念,并且被定義為一系列抽象的屬性如尺寸、重量和價格,以及操作這些屬性的函數(shù)。類封裝了將要被創(chuàng)建的對象的所有核心屬性。因為類使用了數(shù)據(jù)抽象的概念,所以它們被稱為抽象數(shù)據(jù)類型(ADT)?! 》庋b  封裝機(jī)制將數(shù)據(jù)和代碼捆綁到一起,避免了外界的干擾和不確定性。它同樣允許創(chuàng)建對象。簡單的說,一個對象就是一個封裝了數(shù)據(jù)和操作這些數(shù)據(jù)的代碼的邏輯實體?! ≡谝粋€對象內(nèi)部,某些代碼和(或)某些數(shù)據(jù)可以是私有的,不能被外界訪問。通過這種方式,對象對內(nèi)部數(shù)據(jù)提供了不同級別的保護(hù),以防止程序中無關(guān)的部分意外的改變或錯誤的使用了對象的私有部分?! ±^承  繼承是可以讓某個類型的對象獲得另一個類型的對象的屬性的方法。它支持按級分類的概念。例如,知更鳥屬于飛鳥類,也屬于鳥類。這種分類的原則是,每一個子類都具有父類的公共特性?! ≡?OOP中,繼承的概念很好的支持了代碼的重用性(reusability),也就是說,我們可以向一個已經(jīng)存在的類中添加新的特性,而不必改變這個類。這可以通過從這個已存在的類派生一個新類來實現(xiàn)。這個新的類將具有原來那個類的特性,以及新的特性。而繼承機(jī)制的魅力和強大就在于它允許程序員利用已經(jīng)存在的類(接近需要,而不是完全符合需要的類),并且可以以某種方式修改這個類,而不會影響其它的東西?! ∽⒁猓總€子類只定義那些這個類所特有的特性。而如果沒有按級分類,每類都必須顯式的定義它所有的特性?! 《鄳B(tài)  多態(tài)是OOP的另一個重要概念。多態(tài)的意思是事物具有不同形式的能力。舉個例子,對于不同的實例,某個操作可能會有不同的行為。這個行為依賴于所要操作數(shù)據(jù)的類型。比如說加法操作,如果操作的數(shù)據(jù)是數(shù),它對兩個數(shù)求和。如果操作的數(shù)據(jù)是字符串,則它將連接兩個字符串?! 《鄳B(tài)機(jī)制使具有不同內(nèi)部結(jié)構(gòu)的對象可以共享相同的外部接口。這意味著,雖然針對不同對象的具體操作不同,但通過一個公共的類,它們(那些操作)可以通過相同的方式予以調(diào)用。多態(tài)在實現(xiàn)繼承的過程中被廣泛應(yīng)用?! ∶嫦?qū)ο蟪绦蛟O(shè)計語言支持多態(tài),術(shù)語稱之為one interface multiple method(一個接口,多個實現(xiàn))。簡單來說,多態(tài)機(jī)制允許通過相同的接口引發(fā)一組相關(guān)但不相同的動作,通過這種方式,可以減少代碼的復(fù)雜度。在某個特定的情況下應(yīng)該作出怎樣的動作,這由編譯器決定,而不需要程序員手工干預(yù)?! ≡诙嗪瘮?shù)程序中,許多重要的數(shù)據(jù)被聲明為全局變量,這樣它們才可以被所有的函數(shù)訪問。每個函數(shù)又可以具有它自己的局部變量。全局變量很容易被某個函數(shù)不經(jīng)意之間改變。而在一個大程序中,很難分辨每個函數(shù)都使用了哪些變量。如果我們需要修改某個外部數(shù)據(jù)的結(jié)構(gòu),我們就要修改所有訪問這個數(shù)據(jù)的函數(shù)。這很容易導(dǎo)致bug的產(chǎn)生。  在結(jié)構(gòu)化程序設(shè)計中,另一個嚴(yán)重的缺陷是不能很好的模擬真實世界的問題。這是因為函數(shù)都是面向過程的,而不是真正的對應(yīng)于問題中的各個元素?! ∶嫦蜻^程的程序設(shè)計的一些特點如下:  .強調(diào)做(算法);  .大程序被分隔為許多小程序,這些小程序稱為函數(shù);  .大多數(shù)函數(shù)共享全局?jǐn)?shù)據(jù);  .數(shù)據(jù)開放的由一個函數(shù)流向另一個函數(shù)。函數(shù)把數(shù)據(jù)從一種形式轉(zhuǎn)換為另一種形式?! 〔捎糜缮现料碌某绦蛟O(shè)計方法?! 討B(tài)綁定  綁定指的是將一個過程調(diào)用與相應(yīng)代碼鏈接起來的行為。動態(tài)綁定的意思是,與給定的過程調(diào)用相關(guān)聯(lián)的代碼只有在運行期才可知。它與多態(tài)和繼承的聯(lián)系極為緊密。一個多態(tài)引用的函數(shù)調(diào)用決定于這個引用的動態(tài)類型?! ∠鬟f  一個面向?qū)ο蟮某绦蛴稍S多對象組成,這些對象之間需要相互溝通。因此,在面向?qū)ο蟪绦蛟O(shè)計語言中,程序設(shè)計的主要步驟如下:  創(chuàng)建類,這些類定義了對象及其行為;  由類定義創(chuàng)建對象;  建立對象之間的通訊?! ο笾g通過收發(fā)信息相互溝通,這一點類似于人與人之間的信息傳遞。信息傳遞的概念使得真實世界的直接模擬更易于和建立系統(tǒng)交流?! τ谀硞€特定對象來說,消息就是請求執(zhí)行某個過程,因此,消息的接收對象會調(diào)用一個函數(shù)(過程),以產(chǎn)生預(yù)期的結(jié)果。傳遞的消息的內(nèi)容包括接收消息的對象的名字,需要調(diào)用的函數(shù)的名字,以及必要的信息?! ο缶陀幸粋€生命周期。它們可以被創(chuàng)建和銷毀。只要對象正處于其生存期,就可以與其進(jìn)行通訊。  OOP的優(yōu)點  OOP具有許多優(yōu)點,無論是對于程序設(shè)計者或者用戶來說都是如此。面向?qū)ο鬄檐浖a(chǎn)品擴(kuò)展和質(zhì)量保證中的許多問題提供了解決辦法。這項技術(shù)能夠大大提高程序員的生產(chǎn)力,并可提高軟件的質(zhì)量以及降低其維護(hù)費用。其主要的優(yōu)點陳列于下:  通過繼承,我們可以大幅減少多余的代碼,并擴(kuò)展現(xiàn)有代碼的用途;  我們可以在標(biāo)準(zhǔn)的模塊上(這里所謂的標(biāo)準(zhǔn)指程序員之間彼此達(dá)成的協(xié)議)構(gòu)建我們的程序,而不必一切從頭開始。這可以減少軟件開發(fā)時間并提高生產(chǎn)效率;  數(shù)據(jù)隱藏的概念幫助程序員們保護(hù)程序免受外部代碼的侵襲
點擊復(fù)制文檔內(nèi)容
環(huán)評公示相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1