面向?qū)ο蟪绦蛟O(shè)計,面向?qū)ο蟪绦蛟O(shè)計學(xué)什么
1、面向?qū)ο蟪绦蛟O(shè)計學(xué)什么
一、面向?qū)ο蟪绦蛟O(shè)計學(xué)什么:
面向?qū)ο蟪绦蛟O(shè)計中學(xué)習(xí)主要包括:對象、類、數(shù)據(jù)抽象、繼承、動態(tài)綁定、數(shù)據(jù)封裝、多態(tài)性、消息傳遞。
二、知識擴(kuò)展:面向?qū)ο蟪绦蛟O(shè)計(Object Oriented Programming)作為一種新方法,其本質(zhì)是以建立模型體現(xiàn)出來的抽象思維過程和面向?qū)ο蟮姆椒āDP褪怯脕矸从超F(xiàn)實世界中事物特征的。
任何一個模型都不可能反映客觀事物的一切具體特征,只能對事物特征和變化規(guī)律的一種抽象,且在它所涉及的范圍內(nèi)更普遍、更集中、更深刻地描述客體的特征。
2、屬于面向?qū)ο蟮某绦蛟O(shè)計語言是
面向?qū)ο蟮某绦蛟O(shè)計語言是(C)。
A.匯編語言
B.機(jī)器語言
C.高級程序語言
D.形式語言
:
程序設(shè)計語言是用于書寫計算機(jī)程序的語言。語言的基礎(chǔ)是一組記號和一組規(guī)則。根據(jù)規(guī)則由記號構(gòu)成的記號串的總體就是語言。在程序設(shè)計語言中,這些記號串就是程序。程序設(shè)計語言有3個方面的因素,即語法、語義和語用。
語法表示程序的結(jié)構(gòu)或形式,亦即表示構(gòu)成語言的各個記號之間的組合規(guī)律,但不涉及這些記號的特定含義,也不涉及使用者。語義表示程序的含義,亦即表示按照各種方法所表示的各個記號的特定含義,但不涉及使用者。
有許多用于特殊用途的語言,只在特殊情況下使用。例如,PHP專門用來顯示網(wǎng)頁;Perl更適合文本處理;C語言被廣泛用于操作系統(tǒng)和編譯器(所謂的系統(tǒng)編程)的開發(fā)。
高級程序設(shè)計語言(也稱高級語言)的出現(xiàn)使得計算機(jī)程序設(shè)計語言不再過度地倚賴某種特定的機(jī)器或環(huán)境。這是因為高級語言在不同的平臺上會被編譯成不同的機(jī)器語言,而不是直接被機(jī)器執(zhí)行。最早出現(xiàn)的編程語言之一FORTRAN的一個主要目標(biāo),就是實現(xiàn)平臺獨立。
雖然大多數(shù)的語言可以既可被編譯(Compiled)又可被解譯(interpreted),但大多數(shù)只在一種情況下能夠良好運(yùn)行。在一些編程系統(tǒng)中,程序要經(jīng)過幾個階段的編譯,一般而言,后階段的編譯往往更接近機(jī)器語言。
這種常用的使用技巧最早在1960年代末用于BCPL,編譯程序先編譯一個叫做“0代碼”的轉(zhuǎn)換程序,然后再使用虛擬器轉(zhuǎn)換到可以運(yùn)行于機(jī)器上的真實代碼。
這種成功的技巧之后又用于Pascal和P-code,以及Smalltalk和二進(jìn)制碼,雖然在很多時候,中間過渡的代碼往往是解譯,而不是編譯的。
3、什么是面向?qū)ο缶幊蹋?/h3>
一.前言
其實不管是java還是.net都是屬于面向?qū)ο蟪绦蛟O(shè)計語言,歸根結(jié)底,它們都離不開面向?qū)ο螅允裁词敲嫦驅(qū)ο竽兀馑季褪莖bject-oriented將對數(shù)據(jù)和對數(shù)據(jù)的操作作為一個相互依賴的關(guān)系、不可分割的整體,才用信息隱蔽技術(shù)和數(shù)據(jù)抽象,更簡單地解決現(xiàn)實當(dāng)中的問題!
上面的概念比較抽象,這里涉及到一個類的問題,通俗地說,就是把一個事物抽象出來成為類,而這個類的實例就是對象,類跟對象的關(guān)系其實就相當(dāng)于設(shè)計圖紙跟實物之間的關(guān)系,面向?qū)ο笃鋵嵕褪敲嫦蛴陬惖?
面向?qū)ο蟮娜筇匦裕悍庋b、繼承、多態(tài)!
二.基本概念
1.封裝
封裝的意思其實很簡單:就像你使用優(yōu)盤一樣,優(yōu)盤被封裝在一個盒子里面,你根本不需要知道它是怎么工作的,你只要知道怎么用它就行了,當(dāng)然用的時候是使用USB接口,對封裝的類進(jìn)行調(diào)用的時候也是用特定的接口進(jìn)行調(diào)用的!
2.繼承
繼承是指一個對象從另一個對象中獲得屬性的過程.是面向?qū)ο蟪绦蛟O(shè)計的三大原則之二,它支持按層次分類的概念.例如,波斯貓是貓的一種,貓又是哺乳動物的一種,哺乳動物又是動物的一種.如果不使用層次的概念,每個對象需要明確定義各自的全部特征.通過層次分類方式,一個對象只需要在它的類中定義是它成為唯一的各個屬性,然后從父類中繼承它的通用屬性.因此,正是由于繼承機(jī)制,才使得一個對象可以成為一個通用類的一個特定實例.一個深度繼承的子類將繼承它在類層次中的每個祖先的所有屬性.
繼承與封裝可以互相作用.如果一個給定的類封裝了某些屬性,它的任何子類將會含有同樣得屬性,另加各個子類所有得屬性.這是面向?qū)ο蟪绦蛟趶?fù)雜性上呈線性而非幾何增長的一個重要概念.新的子類繼承其所有祖先的所有屬性.子類和系統(tǒng)中的其他代碼不會產(chǎn)生無法預(yù)料的交互作用.
3.多態(tài)
多態(tài)是指一個方法只能有一個名稱,但可以有許多形態(tài),也就是程序中可以定義多個同名的方法,用"一個接口,多個方法"來描述.可以通過方法的參數(shù)和類型引用.
三.封裝、繼承、多態(tài)之間的關(guān)系
下面我給你講一個封裝、繼承、多態(tài)組合起來的例子:
在由封裝,繼承,多態(tài)所組成的環(huán)境中,程序員可以編寫出比面向過程模型更健壯,更具擴(kuò)展性的程序.經(jīng)過仔細(xì)設(shè)計的類層次結(jié)構(gòu)是重用代碼的基礎(chǔ).封裝能讓程序員不必修改公有接口的代碼即可實現(xiàn)程序的移植.多態(tài)能使程序員開發(fā)出簡潔,易懂,易修改的代碼.例如:汽車
從繼承的角度看,駕駛員都依靠繼承性來駕駛不同類型(子類)的汽車,無論這輛車是轎車還是卡車,是奔馳牌還是菲亞特牌,駕駛員都能找到方向盤,手剎,換檔器.經(jīng)過一段時間駕駛后,都能知道手動檔與自動檔之間的差別,因為他們實際上都知道這兩者的共同超類:傳動裝置.
從封裝的角度看,駕駛員總是看到封裝好的特性.剎車隱藏了許多復(fù)雜性,其外觀如此簡單,用腳就能操作它.發(fā)動機(jī),手剎,輪胎大小的實現(xiàn)對與剎車類的定義沒有影響.
從多態(tài)的角度看,剎車系統(tǒng)有正鎖反鎖之分,駕駛員只用腳踩剎車停車,同樣的接口可以用來控制若干種不同的實現(xiàn)(正鎖或反鎖)
這樣各個獨立的構(gòu)件才被轉(zhuǎn)換為汽車這個對象的.同樣,電腦培訓(xùn)認(rèn)為可以通過使用面向?qū)ο蟮脑O(shè)計原則,程序員可以把一個復(fù)雜程序的各個構(gòu)件組合在一起,形成一個一致,健壯,可維護(hù)的程序。
4、面向?qū)ο蟪绦蛟O(shè)計與面向過程程序設(shè)計有什么區(qū)別?
面向過程(ProcedureOriented):以過程為核心,強(qiáng)調(diào)事件的流程、順序,如:C語言。
面向?qū)ο螅∣bjectOriented):以對象為核心,強(qiáng)調(diào)事件的角色、主體,如:C++、Java。
面向過程:通過分別調(diào)用來完成每一件事,每一步都是一個過程,整個過程循環(huán)漸進(jìn)。
面向?qū)ο螅合榷x一個類別實例,列出屬于該類別實例的屬性及功能,然后調(diào)用實例。在調(diào)用實例的方法中大家可以看到其內(nèi)部也是一種面向過程的實現(xiàn),所以面向?qū)ο笈c面向過程并不是互斥的,面向?qū)ο髢?nèi)可以有面向過程的設(shè)計。
請?zhí)砑游⑿盘栕稍儯?9071507959
最新更新
推薦閱讀
- 面向?qū)ο蟪绦蛟O(shè)計,面向?qū)ο蟪绦蛟O(shè)計學(xué)什么
- 面向?qū)ο蟮奶卣?面向?qū)ο蟮娜筇匦?/strong>
- 面向21世紀(jì)教育振興行動計劃,何謂九八五大學(xué)?
- 面臨的近義詞,面臨的近義詞
- 面與面相交得到,面與面相交得到什么線與線相交得到什么
- 靡不有初,靡不有初鮮克有終是什么意思
- 青鳥殷勤為探看,“青鳥殷勤為探看”的上句是什么?出自哪首詩?
- 青鳥不傳云外信丁香空結(jié)雨中愁詩意,青鳥不傳云外信丁香空結(jié)雨中愁的意思
- 青鳥不傳云外信丁香空結(jié)雨中愁的意思,青鳥不傳云外信丁香空結(jié)雨中愁。這句詩的意思是什么?
- 青驕課堂期末考試答案2020年,青驕第二課堂2022六年級期末考試參考答案
猜你喜歡
- 人大代表的權(quán)利和義務(wù),全國人大代表的權(quán)利和義務(wù)
- 七年級下冊數(shù)學(xué)答案,蘇科版七年級下冊數(shù)學(xué)課本第33頁練習(xí)答案
- 七里海濕地公園,天津七里海國家濕地公園開放了嗎
- 乒乓球是哪個國家發(fā)明的,乒乓球起源于哪個國家
- 你的味道,你的味道 歌詞
- 企業(yè)創(chuàng)新的重要性,企業(yè)創(chuàng)新的重要性和意義是什么
- 你好2020,2020春晚中,《你好,2020》這首歌的歌詞是什么?
- 你的繩子 電影,你別怕我只砍你的繩子是什么電影
- 全振動,什么是振動,全振動又是什么?
- 親愛的爸爸媽媽,“親愛的爸爸媽媽你們好么…”是哪首歌里的歌詞
關(guān)注我們
