更新時間:2019-09-05 來源:黑馬程序員 瀏覽量:
面向?qū)ο缶幊淌钱斀裰髁鞯某绦蛟O(shè)計思想,已經(jīng)取代了過程化程序開發(fā)技術(shù),Java 是完全面向?qū)ο缶幊陶Z言,所以必須熟悉面向?qū)ο蟛拍軌蚓帉慗ava
程序。下面我就介紹什么是java面向?qū)ο蟆?br/>
一、面向?qū)ο蟮母拍?/strong>
面向?qū)ο笫且环N符合人類思維習慣的編程思想?,F(xiàn)實生活中存在各種形態(tài)不同的事物,這些事物之間存在著各種各樣的聯(lián)系。在程序中使用對象來映射現(xiàn)實中的事物使用對象的關(guān)系來描述事物之間的聯(lián)系,這種思想就是面向?qū)ο蟆?/p>
提到面向?qū)ο?,自然會想到面向過程,面向過程就是分析解決問題所需要的步驟,然后用函數(shù)把這些步驟一一實現(xiàn),使用的時候一個一個依次調(diào)用就可以了。面向?qū)ο髣t是把解決的問題按照一定規(guī)則劃分為多個獨立的對象,然后通過調(diào)用對象的方法來解決問題。當然,一個應(yīng)用程序會包含多個對象,通過多個對象的相互配合來實現(xiàn)應(yīng)用程序的功能,這樣當應(yīng)用程序功能發(fā)生變動時,只需要修改個別的對象就可以了,從而使代碼更容易得到維護。
二、面向?qū)ο蟮奶攸c
面向?qū)ο蟮奶攸c主要可以概括為封裝性、繼承性和多態(tài)性,接下來針對這三種特性進行簡單介紹。
1、封裝性
封裝是面向?qū)ο蟮暮诵乃枷?,將對象的屬性和行為封裝起來,不需要讓外界知道具體實現(xiàn)細節(jié),這就是封裝思想。例如,用戶使用電腦,只需要使用手指敲鍵盤就可以了無須知道電腦內(nèi)部是如何工作的,即使用戶可能碰巧知道電腦的工作原理,但在使用時,并不完全依賴電腦工作原理這些細節(jié)。
2、繼承性
繼承性主要描述的是類與類之間的關(guān)系,通過繼承,可以在無須重新編寫原有類的情況下,對原有類的功能進行擴展。例如,有一個汽車的類,該類中描述了汽車的普通特性和功能,而轎車的類中不僅應(yīng)該包含汽車的特性和功能,還應(yīng)該增加轎車特有的功能,這時,可以讓轎車類繼承汽車類,在轎車類中單獨添加轎車特性的方法就可以了。繼承性不僅增強了代碼復用性,提高了開發(fā)效率,而且為程序的修改補充提供了便利。
3、多態(tài)性
多態(tài)性指的是在程序中允許出現(xiàn)重名現(xiàn)象,它指在一個類中定義的屬性和方法被其他類繼承后,它們可以具有不同的數(shù)據(jù)類型或表現(xiàn)出不同的行為,這使得同一個屬性和方法在不同的類中具有不同的語義。例如,當聽到“Cut”這個單詞時,理發(fā)師的行為是剪發(fā),演員的行為是停止表演不同的對象,所表現(xiàn)的行為是不一樣的。
想要真正理解Java面向?qū)ο蟮乃枷牍饪可厦娴慕榻B是不過,需要通過大量的實踐去學習和理解,才能將面向?qū)ο笳嬲I(lǐng)悟。想要系統(tǒng)學習java編程,就到黑馬程序員。
猜你喜歡: