新四季網

面向對象的三大特性及作用(面向對象的3大基本特徵)

2023-04-20 08:18:24 2

面向對象的開發範式其實是對現實世界的理解和抽象的方法,那麼,具體如何將現實世界抽象成代碼呢?這就需要運用面向對象的三大基本特徵,分別是封裝、繼承和多態

1. 封裝(Encapsulation)

所謂封裝,就是把客觀事物封裝成抽象的類,並且類可以把自己的數據和方法只讓可信的類或者對象操作,對不可信的類或者對象隱藏信息。

簡單地說,一個類就是一個封裝了數據及操作這些數據的代碼的邏輯實體。在一個對象內部,某些代碼或某些數據可以是私有的,不能被外界訪問。通過這種方式,對象對內部數據提供了不同級別的保護,以防止程序中無關的部分意外地改變或錯誤地使用了對象的私有部分。

封裝舉例

比如我們想定義一個矩形,先定義一個Rectangle類,然後通過封裝的手段放入一些必備

數據:

/*** 矩形*/class Rectangle {/*** 設置矩形的長度和寬度*/public Rectangle(int length, int width) {this.length = length;this.width = width;}/*** 長度*/private int length;/*** 寬度*/private int width;/*** 獲得矩形面積** @return*/public int area {return this.length * this.width;}}

我們通過封裝的方式,給「矩形」定義了「長度」和「寬度」,這就完成了對現實世界中「矩形」的抽象的第一步。

2. 繼承(Inheritance)

繼承是指這樣一種能力:它可以使用現有類的所有功能,並在無須重新編寫原來的類的情況下對這些功能進行擴展。

通過繼承創建的新類稱為「子類」或「派生類」,被繼承的類稱為「基類」「父類」「超類」。繼承的過程就是從一般到特殊的過程。

繼承舉例

比如我們想定義一個正方形,因為已經有了矩形,所以可以直接繼承Rectangle類(正方形是長方形的一種特例):

/*** 正方形,繼承自矩形*/class Square extends Rectangle {/*** 設置正方形邊長** @param length*/public Square(int length) {super(length, length);}}

在現實世界中,「正方形」是「矩形」的特例,或者說正方形是通過矩形派生出來的,這種派生關係在面向對象中可以用繼承來表達。

3. 多態(Polymorphism)

所謂多態,就是指一個類實例的相同方法在不同情形下有不同的表現形式。多態機制使具有不同內部結構的對象可以共享相同的外部接口。

這意味著,雖然針對不同對象的具體操作不同,但通過一個公共的類,它們(那些操作)可以通過相同的方式予以調用。

最常見的多態就是將子類傳入父類參數中,當運行時調用父類方法時,通過傳入的子類決定具體的內部結構或行為。

關於多態的例子,將在第2章中深入介紹。

在介紹了面向對象的封裝、繼承、多態三個基本特徵之後,我們基本了解了對現實世界抽象的方法。

內容摘自《深入理解Java核心技術(雙色)》,作者張洪亮(@Hollis),他是阿里巴巴技術專家,51CTO 專欄作家,CSDN 博客專家,掘金優秀作者,《程式設計師的三門課》聯合作者,《Java工程師成神之路》系列文章作者;熱衷於分享計算機編程相關技術,博文全網閱讀量數千萬。

,
同类文章
葬禮的夢想

葬禮的夢想

夢見葬禮,我得到了這個夢想,五個要素的五個要素,水火只好,主要名字在外面,職業生涯良好,一切都應該對待他人治療誠意,由於小,吉利的冬天夢想,秋天的夢是不吉利的
找到手機是什麼意思?

找到手機是什麼意思?

找到手機是什麼意思?五次選舉的五個要素是兩名士兵的跡象。與他溝通很好。這是非常財富,它擅長運作,職業是仙人的標誌。單身男人有這個夢想,主要生活可以有人幫忙
我不怎麼想?

我不怎麼想?

我做了什麼意味著看到米飯烹飪?我得到了這個夢想,五線的主要土壤,但是Tu Ke水是錢的跡象,職業生涯更加真誠。他真誠地誠實。這是豐富的,這是夏瑞的巨星
夢想你的意思是什麼?

夢想你的意思是什麼?

你是什​​麼意思夢想的夢想?夢想,主要木材的五個要素,水的跡象,主營業務,主營業務,案子應該抓住魅力,不能疏忽,春天夢想的吉利夢想夏天的夢想不幸。詢問學者夢想
拯救夢想

拯救夢想

拯救夢想什麼意思?你夢想著拯救人嗎?拯救人們的夢想有一個現實,也有夢想的主觀想像力,請參閱週宮官方網站拯救人民夢想的詳細解釋。夢想著敵人被拯救出來
2022愛方向和生日是在[質量個性]中

2022愛方向和生日是在[質量個性]中

[救生員]有人說,在出生88天之前,胎兒已經知道哪天的出生,如何有優質的個性,將走在什麼樣的愛情之旅,將與生活生活有什么生活。今天
夢想切割剪裁

夢想切割剪裁

夢想切割剪裁什麼意思?你夢想切你的手是好的嗎?夢想切割手工切割手有一個真正的影響和反應,也有夢想的主觀想像力。請參閱官方網站夢想的細節,以削減手
夢想著親人死了

夢想著親人死了

夢想著親人死了什麼意思?你夢想夢想你的親人死嗎?夢想有一個現實的影響和反應,還有夢想的主觀想像力,請參閱夢想世界夢想死亡的親屬的詳細解釋
夢想搶劫

夢想搶劫

夢想搶劫什麼意思?你夢想搶劫嗎?夢想著搶劫有一個現實的影響和反應,也有夢想的主觀想像力,請參閱週恭吉夢官方網站的詳細解釋。夢想搶劫
夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂

夢想缺乏缺乏紊亂什麼意思?你夢想缺乏異常藥物嗎?夢想缺乏現實世界的影響和現實,還有夢想的主觀想像,請看官方網站的夢想組織缺乏異常藥物。我覺得有些東西缺失了