[C#] 繼承

摘要:[C#] 繼承

文章轉自:

http://msdn.microsoft.com/zh-tw/library/ms173149%28v=VS.80%29.aspx

 

 

C# 程式設計手冊
繼承 (C# 程式設計手冊)

類別可以繼承自另一個類別。若要繼承,您可以在宣告類別 時,於類別名稱後面加上冒號,然後指定要繼承的類別 (即基底類別),如下所示:


public class A
{
    public A() { }
}

public class B : A
{
    public B() { }
}

新類別 (即衍生類別) 除了會有本身所定義的資料或行為,還會取得基底類別的所有非私用資料和行為。新類別會有兩個有效型別,分別是新類別本身的型別以及所繼承類別的型別。

在 上面的範例中,類別 B 可以同時是 B 和 A。當您存取 B 物件時,可以使用轉換作業將其轉換成 A 物件。B 物件在轉換後並不會有任何改變,但當您檢視 B 物件時,就只會看到 A 的資料和行為。在將 B 轉換為 A 之後,可以再將 A 轉換回 B。A 的執行個體並不一定都可以轉換為 B,只有實際上是 B 的執行個體才可以。如果您將類別 B 當做 B 型別存取,將會同時取得類別 A 和類別 B 的資料和行為。物件可以用於表示多種型別時,即稱為多型。如需詳細資訊,請參閱多 型 (C# 程式設計手冊)。如需轉型的詳細資訊,請參閱轉 型 (C# 程式設計手冊)

結構不可以繼承自其他結構或類別。類別和結構都可以繼承自一或多個介面。如需詳細資 訊,請參閱介 面 (C# 程式設計手冊)