物件導向語言三大特性之多型

2021-08-16 17:23:29 字數 620 閱讀 5654

這篇文章不是和剛剛入行的萌新,適用於中級以上的程式設計師。(這是後話)

今天我們一起來聊聊多型。

如果有人問你什麼是多型,相信大家肯定能夠說上兩句。但是對於核心部分的東西相信很多人還是說不清楚

多型的定義:同一種操作對於不同的物件有著不同的定義,不同的解釋,不同的執行結果。即同乙個物件呼叫乙個相同的方法得到不同的結果。 tip:說是相同但還是有分別。

第乙個特點:過載

定義:在同乙個類中方法名相同,引數列表不一樣我們稱之為過載。

特點:1.方法名必須相同

2.引數型別不同

3.引數個數不同

4.引數的順序不能一樣

5.返回值可以不相同

從上圖中可以看出,過載的幾個特點滿足。

我們再來看多型的第二個特點:

重寫定義 : 子類為了滿足自己的需求而進行的相同方法的不同實現方式,進行方法的重寫。

特點 :1.重寫的方法必須是虛方法,要用override關鍵字。

2.重寫的方法名必須相同。

3.重寫的方法引數必須相同

4.重寫的方法返回值必須相同

物件導向三大特性之多型

多型 同乙個物件在不同時刻表現出來的不同狀態。多型的前提和體現 存在繼承關係或者實現關係 這裡的實現是指介面間的關係 有方法的重寫。有父類引用指向子類物件。多型中成員的訪問特點 訪問成員變數時 首先定義乙個動物類 其次定義乙個子類來繼承它 定義乙個測試類 由此可見當我們用多型的形式去訪問類中的成員變...

物件導向三大特性之多型

本想自己寫 但是發現乙個更好的。抽象類的多型 場景描述 一位剛畢業的老師,目前只能通過騎車上班,多年後終於坐騎公升級了,有了自己的小汽車,於是騎著小汽車上班。騎自行車上班 1.自行車類 public class bike public void stop 2.教師類 public class tea...

物件導向三大特性之多型

多型更像是一種思想,而並非具體的技術。因為繼承的存在,從而引發了多型,python本就是多型的形式,就像現實世界一樣。都是起源於某一單細胞生物但是經過不斷的演化差異化越來越大。多型的定義即是 在不同的類中例項化得到的物件下的相同的方法,實現的過程不一樣。這個就很有意思了.多型的前提是必須有繼承的支援...