面向?qū)ο缶幊逃?個基本特征:
- 抽象。抽象就是將一些事物的共性和相似點抽離出來,并將這些屬性歸為一個類,這個類只考慮這些事物的共性和相似之處,并且會忽略與當(dāng)前業(yè)務(wù)和目標(biāo)無關(guān)的那些方面,只將注意力集中在與當(dāng)前目標(biāo)有關(guān)的方面。
- 封裝。封裝是為了隱藏內(nèi)部實現(xiàn)細(xì)節(jié),是保證軟件部件具有優(yōu)良的模塊性的基礎(chǔ)。封裝的目標(biāo)就是要實現(xiàn)軟件部件“高內(nèi)聚,低耦合”,防止程序之間的相互依賴性帶來的變動影響。
- 繼承。在定義和實現(xiàn)一個類的時候,可以在一個已經(jīng)存在的類的基礎(chǔ)之上來進(jìn)行,把這個已經(jīng)存在的類所定義的內(nèi)容作為自己的內(nèi)容,并可以加入若干新的內(nèi)容,或修改原來的方法(Override,重寫方法)使之更適合特殊的需要,這就是繼承。繼承是子類自動共享父類數(shù)據(jù)和方法的機(jī)制,這是類之間的一種關(guān)系,提高了軟件的可重用性和可擴(kuò)展性。
- 多態(tài)。多態(tài)是運(yùn)行時刻接口匹配的對象相互替換的能力。指程序定義的引用變量所指向的具體類型和通過該引用變量發(fā)出的方法調(diào)用在編譯期并不確定,而是在程序運(yùn)行期間才確定(稱之為動態(tài)綁定),即一個引用變量指向的是哪個類的實例對象,在編譯期間并不確定,在運(yùn)行階段才能決定,因此,這樣就可以使得引用變量綁定到各種不同的類實現(xiàn)上,從而實現(xiàn)不同的行為。多態(tài)性增強(qiáng)了軟件的靈活性和擴(kuò)展性。