更新時間:2021-09-18 15:53:56 來源:動力節(jié)點 瀏覽1848次
因為Java是面向對象的,所以如果不解釋這個概念的含義,就不能完整地討論該語言。在面向對象編程(OOP)獲得動力之前,占主導地位的軟件設計方法是過程編程,它本質上是計算機的一系列指令。這些指令會依次執(zhí)行,同時偶爾會沿途調用子程序。程序哲學鼓勵將數(shù)據與程序功能分開。這是一種可靠的方法,但在較大的程序中,它往往會創(chuàng)建難以理解和維護的代碼。
面向對象編程的概念出現(xiàn)在1970年代初期,作為過程編程的替代方案。顧名思義,OOP基于使用對象的思想。程序中的對象是真實世界對象的表示。例如,在模擬動物園的程序中,對象將代表不同類型的動物。一個對象定義了已知的數(shù)據類型,以及它可以執(zhí)行的各種操作。然而,如果每個對象都必須單獨創(chuàng)建,這種方法不會帶來太大的價值,這就是為什么在面向對象的語言中,對象被組織成類。
將類視為一種對象的藍圖。一個類通常由一個名稱、一組屬性和一組操作組成。例如,在Java中,一個非常簡單的狗類看起來像這樣:
在這個例子中,“Dog”是類的名稱,而“name”和“breed”是屬性(對狗的了解),“drinkWater”、“eatFood”和“wagTail”是操作(狗可以做什么;在Java中,這些被稱為方法)。
OOP提供的主要好處是可重用性。想象一下為一家寵物店編寫一個程序。不必為每個單獨的狗定義變量和函數(shù),您只需創(chuàng)建一個Dog類,然后根據需要創(chuàng)建該類的多個實例。
然而,面向對象編程不僅僅是關于對象。為了被認為是面向對象的,一種語言必須實現(xiàn)OOP的四個主要原則:
讓我們簡要介紹一下它們中的每一個。
TInheritance允許對象接收(或繼承)其他對象的屬性和行為,同時仍然允許它們定義一些獨特的特征。例如,貓和狗都是寵物。所以,如果我們用Java來表示它們,我們會創(chuàng)建一個Pet超類,在那里我們定義各種寵物的共同點——例如,它們都有一個名字,它們都可以喝和吃。然后我們讓Cat和Dog子類繼承自Pet類,并為每個子類定義一些獨特的屬性——例如,貓可以爬樹,狗可以搖尾巴。在Java代碼中,它看起來像這樣:
多態(tài)性允許定義某種動作,并可能有多種方式來執(zhí)行該動作。例如,我們都知道狗吠,貓喵。但是,如果我們決定在Dog類中實現(xiàn)bark()方法并在Cat類中實現(xiàn)meow()方法,則程序將始終必須檢查它正在處??理的寵物類型以發(fā)出聲音。多態(tài)允許我們在Pet超類中定義makeSound()方法,并在子類中定義不同的行為。
抽象是將焦點從特定事物如何工作的細節(jié)轉移到可用操作的想法。它有助于降低系統(tǒng)的復雜性。例如,在現(xiàn)實世界中,司機不需要知道他的汽車發(fā)動機是如何工作的;他只需要知道,如果他踩下踏板,汽車就會加速。在Java中,抽象是通過抽象類和接口實現(xiàn)的。
封裝與抽象密切相關。它是將數(shù)據和方法包裝到一個單元中,并使其免受外部干擾的想法。Java允許以私有方法和變量的形式進行封裝。
以上就是動力節(jié)點小編介紹的"對于剛剛入門Java開發(fā)要學習什么技術",希望對大家有幫助,如有疑問,請在線咨詢,有專業(yè)老師隨時為您服務。