---------------------- asp.net+android+io開發s、.net培訓、期待與您交流! ----------------------
c#的繼承與 c++ 等語言乙個重要的不同,就是只能從乙個類中繼承,這是開發者在權衡了從多個類c#繼承的優勢與劣勢作出的結果。不過,可以從介面繼承。另外,繼承可傳遞。建構函式和析構函式不能被繼承。
c#繼承中的重寫
1、virtual 用在基類中,指定乙個虛方法(屬性),表示這個方法(屬性)可以重寫。
2、override 用在派生類中,表示對基類虛方法(屬性)的重寫。
不能重寫非虛方法或靜態方法。重寫的基方法必須是 virtual、abstract 或 override 的。為什麼 override 也可以重寫呢?因為基類中的 override 實際上是對基類的基類進行的重寫,由於繼承可傳遞,所以也可以對基類中 override 的方法進行重寫。
3、override 宣告不能更改 virtual 方法的可訪問性。override 方法和 virtual 方法必須具有相同的訪問級別修飾符。
不能使用修飾符 new、static、virtual 或 abstract 來修改 override 方法。
4、重寫屬性宣告必須指定與繼承屬性完全相同的訪問修飾符、型別和名稱,並且被重寫的屬性必須是 virtual、abstract 或 override 的。
下面是關於人的類,男人從人那裡繼承來,中國人又從男人那裡繼承來,在new乙個中國人後,中國人可以呼叫前面父類包括父類的父類的方法和字段(不是private和靜態屬性)。
using system;
using system.collections.generic;
using system.linq;
using system.text;
}class 人
}class 男人:人
}class 女人:人
}class 中國人:男人
public 中國人()
}}
---------------------- asp.net+android+ios開發、.net培訓、期待與您交流! ----------------------
詳細請檢視:
黑馬程式設計師 繼承
乙個類宣告的基類說明中只能有乙個單獨的類,單繼承性 雖然類只能直接繼承乙個基類,但繼承的層次沒有限制 隱藏基類的成員 1.宣告乙個新的相同型別的成員,並使用相同的名稱 不包括返回型別 2.要讓編譯器知道你在故意隱藏繼承的成員,使用 new修飾符 基類訪問 可以使用基類訪問表示式訪問隱藏的基類成員 基...
黑馬程式設計師 繼承
黑馬程式設計師 繼承 一 黑馬程式設計師 繼承1基本使用 import animal的宣告 inte ce animal nsobject void setage int age int age void setweigth double weight double weight end anima...
黑馬程式設計師 繼承
asp.net unity開發 net培訓 期待與您交流!小結關於繼承的一些基本重要知識點 1 c 中任何乙個類都是繼承自object類。2 如果乙個類沒有顯示繼承自object類,那麼它預設繼承自object類。3.如果乙個類顯示當前繼承自某個類,則將覆蓋預設繼承的object類。4 繼承的傳遞性...