C#基礎1.9 重寫 重載 虛方法,抽象方法,抽象類,多態

前言

在介紹重寫和重載之前首先要介紹一些基礎知識即子類和父類。

子類與父類:

如果一個類A繼承另一個類B,那麼A類就稱爲B類的子類,而把B類稱爲A的父類。
子類繼承時自動共享父類的數據結構及方法的機制,這是類與類之間的一種關係,在進行定義和實現時,可以在一個已經存在的類上進行,並將它所定義的內容佔爲己有,同時加上自己的特色。

那麼理解了什麼是子類和父類之後,有利於我們瞭解下面的重載和重寫。

重寫與重載

重寫(override): 子類重寫父類中的方法,不管父類中包含的是虛方法還是抽象方法,子類都可以重寫。

重載(overload):重載是方法的名稱相同,參數或類型不同,可以進行多次重載以適應不同的需要。

重寫與重載的區別:
重寫是子類重寫父類的方法,面向於對象。
重載則是爲方法添加不同參數不同類型的內容,偏向於面向過程。

虛方法,抽象方法,抽象類

虛方法(virtual):當進行方法聲明時,在前面使用virtual修飾符,我們就將其稱之爲虛方法,相反的話則稱之非虛方法,值得注意的是當我們使用了virtual修飾符後,就不能再使用static、abstract、override修飾符。虛方法裏有內容。

抽象方法(abstract):在進行面向對象編程時,抽象方法指的是隻有方法聲明,卻沒有具體方法體的方法,通常用於抽象類或接口中。

抽象類指的是一個類中沒有清晰的描繪一個具體的對象,那麼這個類就是抽象類,使用abstract進行修飾的類就是抽象類,抽象類並不完整因此只能用作基類,且不能實例化。

虛方法與抽象方法的不同

在這裏插入圖片描述

多態

多態是指當一個類同時表現多重不同的能力,同一操作作用於不同的對象,有不同的解釋產生不同的執行結果。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章