面向對象技術(shù)是目前流行的系統設計開(kāi)發(fā)技術(shù),它包括面向對象分析和面向對象程序設計。面向對象程序設計技術(shù)的提出,主要是為了解決傳統程序設計方法——結構化程序設計所不能解決的代碼重用問(wèn)題?! ∶嫦驅ο蟮木幊谭椒ň哂兴膫€(gè)基本特征:1.抽象: 抽象就是忽略一個(gè)主題中與當前目標無(wú)關(guān)的那些方面,以便更充分地注意與當前目標有關(guān)的方面。抽象并不打算了解全部問(wèn)題,而只是選擇其中的一部分,暫時(shí)不用部分細節。比如,我們要設計一個(gè)學(xué)生成績(jì)管理系統,考察學(xué)生這個(gè)對象時(shí),我們只關(guān)心他的班級、學(xué)號、成績(jì)等,而不用去關(guān)心他的身高、體重這些信息。抽象包括兩個(gè)方面,一是過(guò)程抽象,二是數據抽象。過(guò)程抽象是指任何一個(gè)明確定義功能的操作都可被使用者看作單個(gè)的實(shí)體看待,盡管這個(gè)操作實(shí)際上可能由一系列更低級的操作來(lái)完成。數據抽象定義了數據類(lèi)型和施加于該類(lèi)型對象上的操作,并限定了對象的值只能通過(guò)使用這些操作修改和觀(guān)察。2.繼承: 繼承是一種聯(lián)結類(lèi)的層次模型,并且允許和鼓勵類(lèi)的重用,它提供了一種明確表述共性的方法。對象的一個(gè)新類(lèi)可以從現有的類(lèi)中派生,這個(gè)過(guò)程稱(chēng)為類(lèi)繼承。新類(lèi)繼承了原始類(lèi)的特性,新類(lèi)稱(chēng)為原始類(lèi)的派生類(lèi)(子類(lèi)),而原始類(lèi)稱(chēng)為新類(lèi)的基類(lèi)(父類(lèi))。派生類(lèi)可以從它的基類(lèi)那里繼承方法和實(shí)例變量,并且類(lèi)可以修改或增加新的方法使之更適合特殊的需要。這也體現了大自然中一般與特殊的關(guān)系。繼承性很好的解決了軟件的可重用性問(wèn)題。比如說(shuō),所有的Windows應用程序都有一個(gè)窗口,它們可以看作都是從一個(gè)窗口類(lèi)派生出來(lái)的。但是有的應用程序用于文字處理,有的應用程序用于繪圖,這是由于派生出了不同的子類(lèi),各個(gè)子類(lèi)添加了不同的特性。3.封裝: 封裝是面向對象的特征之一,是對象和類(lèi)概念的主要特性。封裝是把過(guò)程和數據包圍起來(lái),對數據的訪(fǎng)問(wèn)只能通過(guò)已定義的界面。面向對象計算始于這個(gè)基本概念,即現實(shí)世界可以被描繪成一系列完全自治、封裝的對象,這些對象通過(guò)一個(gè)受保護的接口訪(fǎng)問(wèn)其他對象。一旦定義了一個(gè)對象的特性,則有必要決定這些特性的可見(jiàn)性,即哪些特性對外部世界是可見(jiàn)的,哪些特性用于表示內部狀態(tài)。在這個(gè)階段定義對象的接口。通常,應禁止直接訪(fǎng)問(wèn)一個(gè)對象的實(shí)際表示,而應通過(guò)操作接口訪(fǎng)問(wèn)對象,這稱(chēng)為信息隱藏。事實(shí)上,信息隱藏是用戶(hù)對封裝性的認識,封裝則為信息隱藏提供支持。封裝保證了模塊具有較好的獨立性,使得程序維護修改較為容易。對應用程序的修改僅限于類(lèi)的內部,因而可以將應用程序修改帶來(lái)的影響減少到最低限度。4. 多態(tài)性: 多態(tài)性是指允許不同類(lèi)的對象對同一消息作出響應。比如同樣的加法,把兩個(gè)時(shí)間加在一起和把兩個(gè)整數加在一起肯定完全不同。又比如,同樣的選擇編輯-粘貼操作,在字處理程序和繪圖程序中有不同的效果。多態(tài)性包括參數化多態(tài)性和包含多態(tài)性。多態(tài)性語(yǔ)言具有靈活、抽象、行為共享、代碼共享的優(yōu)勢,很好的解決了應用程序函數同名問(wèn)題。面向對象程序設計具有許多優(yōu)點(diǎn): 1、開(kāi)發(fā)時(shí)間短,效率高,可靠性高,所開(kāi)發(fā)的程序更強壯。由于面向對象編程的可重用性,可以在應用程序中大量采用成熟的類(lèi)庫,從而縮短了開(kāi)發(fā)時(shí)間。2、應用程序更易于維護、更新和升級。繼承和封裝使得應用程序的修改帶來(lái)的影響更加局部化。