更新時(shí)間:2021-09-18 15:53:56 來(lái)源:動(dòng)力節(jié)點(diǎn) 瀏覽2299次
因?yàn)镴ava是面向?qū)ο蟮模匀绻唤忉屵@個(gè)概念的含義,就不能完整地討論該語(yǔ)言。在面向?qū)ο缶幊痰母拍畛霈F(xiàn)在1970年代初期,作為過(guò)程編程的替代方案。顧名思義,OOP基于使用對(duì)象的思想。程序中的對(duì)象是真實(shí)世界對(duì)象的表示。例如,在模擬動(dòng)物園的程序中,對(duì)象將代表不同類型的動(dòng)物。一個(gè)對(duì)象定義了已知的數(shù)據(jù)類型,以及它可以執(zhí)行的各種操作。然而,如果每個(gè)對(duì)象都必須單獨(dú)創(chuàng)建,這種方法不會(huì)帶來(lái)太大的價(jià)值,這就是為什么在面向?qū)ο蟮恼Z(yǔ)言中,對(duì)象被組織成類。
將類視為一種對(duì)象的藍(lán)圖。一個(gè)類通常由一個(gè)名稱、一組屬性和一組操作組成。例如,在Java中,一個(gè)非常簡(jiǎn)單的狗類看起來(lái)像這樣:

在這個(gè)例子中,“Dog”是類的名稱,而“name”和“breed”是屬性(對(duì)狗的了解),“drinkWater”、“eatFood”和“wagTail”是操作(狗可以做什么;在Java中,這些被稱為方法)。
OOP提供的主要好處是可重用性。想象一下為一家寵物店編寫一個(gè)程序。不必為每個(gè)單獨(dú)的狗定義變量和函數(shù),您只需創(chuàng)建一個(gè)Dog類,然后根據(jù)需要?jiǎng)?chuàng)建該類的多個(gè)實(shí)例。
然而,面向?qū)ο缶幊滩粌H僅是關(guān)于對(duì)象。為了被認(rèn)為是面向?qū)ο蟮?,一種語(yǔ)言必須實(shí)現(xiàn)OOP的四個(gè)主要原則:
讓我們簡(jiǎn)要介紹一下它們中的每一個(gè)。

TInheritance允許對(duì)象接收(或繼承)其他對(duì)象的屬性和行為,同時(shí)仍然允許它們定義一些獨(dú)特的特征。例如,貓和狗都是寵物。所以,如果我們用Java來(lái)表示它們,我們會(huì)創(chuàng)建一個(gè)Pet超類,在那里我們定義各種寵物的共同點(diǎn)——例如,它們都有一個(gè)名字,它們都可以喝和吃。然后我們讓Cat和Dog子類繼承自Pet類,并為每個(gè)子類定義一些獨(dú)特的屬性——例如,貓可以爬樹(shù),狗可以搖尾巴。在Java代碼中,它看起來(lái)像這樣:

多態(tài)性允許定義某種動(dòng)作,并可能有多種方式來(lái)執(zhí)行該動(dòng)作。例如,我們都知道狗吠,貓喵。但是,如果我們決定在Dog類中實(shí)現(xiàn)bark()方法并在Cat類中實(shí)現(xiàn)meow()方法,則程序?qū)⑹冀K必須檢查它正在處??理的寵物類型以發(fā)出聲音。多態(tài)允許我們?cè)赑et超類中定義makeSound()方法,并在子類中定義不同的行為。
抽象是將焦點(diǎn)從特定事物如何工作的細(xì)節(jié)轉(zhuǎn)移到可用操作的想法。它有助于降低系統(tǒng)的復(fù)雜性。例如,在現(xiàn)實(shí)世界中,司機(jī)不需要知道他的汽車發(fā)動(dòng)機(jī)是如何工作的;他只需要知道,如果他踩下踏板,汽車就會(huì)加速。在Java中,抽象是通過(guò)抽象類和接口實(shí)現(xiàn)的。
封裝與抽象密切相關(guān)。它是將數(shù)據(jù)和方法包裝到一個(gè)單元中,并使其免受外部干擾的想法。Java允許以私有方法和變量的形式進(jìn)行封裝。
以上就是動(dòng)力節(jié)點(diǎn)小編介紹的"對(duì)于剛剛?cè)腴TJava開(kāi)發(fā)要學(xué)習(xí)什么技術(shù)",希望對(duì)大家有幫助,如有疑問(wèn),請(qǐng)?jiān)诰€咨詢,有專業(yè)老師隨時(shí)為您服務(wù)。
相關(guān)閱讀
Java實(shí)驗(yàn)班
0基礎(chǔ) 0學(xué)費(fèi) 15天面授
Java就業(yè)班
有基礎(chǔ) 直達(dá)就業(yè)
Java夜校直播班
業(yè)余時(shí)間 高薪轉(zhuǎn)行
Java在職加薪班
工作1~3年,加薪神器
Java架構(gòu)師班
工作3~5年,晉升架構(gòu)
提交申請(qǐng)后,顧問(wèn)老師會(huì)電話與您溝通安排學(xué)習(xí)