全國(guó)咨詢(xún)/投訴熱線:400-618-4000

首頁(yè)常見(jiàn)問(wèn)題正文

Java培訓(xùn):面向?qū)ο蟮乃枷?/h1>

更新時(shí)間:2022-10-18 來(lái)源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

  面向?qū)ο笫且环N符合人類(lèi)思維習(xí)慣的編程思想?,F(xiàn)實(shí)生活中存在各種形態(tài)不同的事物,這些事物之前存在著各種各樣的聯(lián)系。在程序中使用對(duì)象映射現(xiàn)實(shí)中的事物,使用對(duì)象的關(guān)系描述事物之間的聯(lián)系,這種思想就是面向?qū)ο蟆?br/>

  提到面向?qū)ο?,自然?huì)想到面向過(guò)程,面向過(guò)程就是分析出解決問(wèn)題所需要的步驟,然后用函數(shù)把這些步驟逐一實(shí)現(xiàn),使用的時(shí)候依次調(diào)用就可以了。面向?qū)ο髣t是把構(gòu)成問(wèn)題的事物按照一定規(guī)則劃分為多個(gè)獨(dú)立的對(duì)象,然后通過(guò)調(diào)用對(duì)象的方法來(lái)解決問(wèn)題。當(dāng)然,一個(gè)應(yīng)用程序會(huì)包含多個(gè)對(duì)象,通過(guò)多個(gè)對(duì)象的相互配合實(shí)現(xiàn)應(yīng)用程序的功能,這樣當(dāng)應(yīng)用程序功能發(fā)生變動(dòng)時(shí),只需要修改個(gè)別的對(duì)象就可以了,從而使代碼維護(hù)更容易。面向?qū)ο蟮奶攸c(diǎn)主要可以概括為封裝性、繼承性和多態(tài)性,下面針對(duì)這3種特點(diǎn)進(jìn)行簡(jiǎn)單介紹。

  1.封裝性

  封裝是面向?qū)ο蟮暮诵乃枷?,它有兩層含義:一層含義是指把對(duì)象的屬性和行為看成是一個(gè)密不可分的整體,將這兩者“封裝”在一起(即封裝在對(duì)象中);另一層含義是指“信息隱藏”,將不想讓外界知道的信息隱藏起來(lái)。例如,駕校的學(xué)員學(xué)開(kāi)車(chē),只需要知道如何操作汽車(chē),無(wú)須知道汽車(chē)內(nèi)部是如何工作的。

  2.繼承性

  繼承性主要描述的是類(lèi)與類(lèi)之間的關(guān)系,通過(guò)繼承,可以在無(wú)須重新編寫(xiě)原有類(lèi)的情況下,對(duì)原有類(lèi)的功能進(jìn)行擴(kuò)展。例如,有一個(gè)汽車(chē)?yán)?,該?lèi)描述了汽車(chē)的普通特性和功能,進(jìn)一步再產(chǎn)生轎車(chē)類(lèi),而轎車(chē)類(lèi)中不僅應(yīng)該包含汽車(chē)的特性和功能,還應(yīng)該增加轎車(chē)特有的功能,這時(shí),可以讓轎車(chē)類(lèi)繼承汽車(chē)類(lèi),在轎車(chē)類(lèi)中單獨(dú)添加轎車(chē)特性和方法就可以了。繼承不僅增強(qiáng)了代碼的復(fù)用性、提高了開(kāi)發(fā)效率,還降低了程序產(chǎn)生錯(cuò)誤的可能性,為程序的維護(hù)以及擴(kuò)展提供了便利。

  3.多態(tài)性

  多態(tài)性是指在一個(gè)類(lèi)中定義的屬性和方法被其他類(lèi)繼承后,它們可以具有不同的數(shù)據(jù)類(lèi)型或表現(xiàn)出不同的行為,這使得同一個(gè)屬性和方法在不同的類(lèi)中具有不同的語(yǔ)義。例如,當(dāng)聽(tīng)到“Cut”這個(gè)單詞時(shí),理發(fā)師的行為是剪發(fā),演員的行為是停止表演,不同的對(duì)象所表現(xiàn)的行為是不一樣的。多態(tài)的特性使程序更抽象、便捷,有助于開(kāi)發(fā)人員設(shè)計(jì)程序時(shí)分組協(xié)同開(kāi)發(fā)。

  面向?qū)ο蟮乃枷雰H靠上面的介紹是無(wú)法真正理解的,只有通過(guò)大量的實(shí)踐去學(xué)習(xí)和理解,才能將面向?qū)ο笏枷胝嬲I(lǐng)悟。

分享到:

在線咨詢(xún) 我要報(bào)名
和我們?cè)诰€交談!