您好,登錄后才能下訂單哦!
本篇內容介紹了“Java面向對象的概念及特征是什么”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
面向對象簡稱 OO(Object Oriented),后期發展出現了面向對象分析(OOA)、 面向對象設計(OOD)、面向對象程序設計(OOP)等新的系統開發方式。
對于Java語言來說,一切皆對像。每一個對象就代表了某個具體的操作。一個個可以獨立的或者從其他地方繼承過來的對象組合起來就成了完整的程序設計。對象之間通過相互作用傳遞信息,從而實現程序開發。
Java是面向對象編程語言,其程序設計核心就是對象。對象就是一個一個現實中實體,每一個對象都對應一個實體,反過來說現實中的每一個實體都是一個對象,他是一個比較具體的概念。
對象的特點:
1. 對象具有屬性和行為。
2. 對象具有變化的狀態。
3. 對象具有唯一性。
4. 對象都是某個類別的實例。
5. 一切皆為對象,真實世界中的所有事物都可以視為對象。
舉例說,在真實世界中學校里,會有學生和老師等實體,學生有學號、姓名、所在班級等屬性(數據),學生還有學習、提問、吃飯和走路等操作。學生只是抽象的描述,這個抽象的描述稱為“類”。在學校里活動的是學生個體,即張同學、李同學等,這些具體的個體稱為“對象”,“對象”也稱為“實例”。
面向對象開發模式有利于人們開拓思維,在具體的開發過程中便于程序的劃分,方便程序員分工合作,提高開發效率。面向對象程序設計有以下優點 。
1. 可重用性:代碼重復使用,減少代碼量,提高開發效率。下面介紹的面向對象的三大核心特性(繼承、封裝和多態)都圍繞這個核心。
2. 可擴展性:指新的功能可以很容易地加入到系統中來,便于軟件的修改。
3. 可管理性:能夠將功能與數據結合,方便管理。
面向對象具有繼承、封裝和多態 3 個核心特性。
繼承性
簡單的說就如同現實中的子女繼承父母擁有的所有財產,但是程序中的繼承性是指子類擁有父類的全部特征和行為,這是類之間的一種關系。Java 只支持單繼承。
一個語文老師類和一個數學老師類,如果不采用繼承方式,那么兩個類中需要定義的屬性和方法如下圖:
可以看到語文老師類和數學老師類中的許多屬性和方法相同,這些相同的屬性和方法可以提取出來放在一個父類中,這個父類用于被語文老師類和數學老師類繼承。當然父類還可以繼承別的類 。如下圖:
總結繼承的特征可用如下樹形圖表示:
學校主要人員是一個大的類別,老師和學生是學校主要人員的兩個子類,而老師又可以分為語文老師和數學老師兩個子類,學生也可以分為班長和組長兩個子類
使用這種層次形的分類方式,是為了將多個類的通用屬性和方法提取出來,放在它們的父類中,然后只需要在子類中各自定義自己獨有的屬性和方法,并以繼承的形式在父類中獲取它們的通用屬性和方法即可。
封裝性
封裝是將代碼及其處理的數據綁定在一起的一種編程機制,該機制保證了程序和數據都不受外部干擾且不被誤用。封裝的目的在于保護信息。他有以下優點:
1. 保護類中的信息,它可以阻止在外部定義的代碼隨意訪問內部代碼和數據。
2. 隱藏細節信息,一些不需要程序員修改和使用的信息,比如取款機中的鍵盤,用戶只需要知道按哪個鍵實現什么操作就可以,至于它內部是如何運行的,用戶不需要知道。
3. 有助于建立各個系統之間的松耦合關系,提高系統的獨立性。當一個系統的實現方式發生變化時,只要它的接口不變,就不會影響其他系統的使用。例如 U 盤,不管里面的存儲方式怎么改變,只要 U 盤上的 USB 接口不變,就不會影響用戶的正常操作。
4. 提高軟件的復用率,降低成本。每個系統都是一個相對獨立的整體,可以在不同的環境中得到使用。例如,一個 U 盤可以在多臺電腦上使用。
Java 語言的基本封裝單位是類。由于類的用途是封裝復雜性,所以類的內部有隱藏實現復雜性的機制。Java 提供了私有和公有的訪問模式,類的公有接口代表外部的用戶應該知道或可以知道的每件東西,私有的方法數據只能通過該類的成員代碼來訪問,這就可以保證不發生不想看到的事情。
多態性
面向對象的多態性,即“一個接口,多個方法”。多態性體現在父類中定義的屬性和方法被子類繼承后,可以具有不同的屬性或表現方式。多態性允許一個接口被多個同類使用,彌補了單繼承的不足。
“Java面向對象的概念及特征是什么”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。