繼承和多型的一些關鍵字

2021-06-29 06:34:09 字數 1278 閱讀 9651

sealed

防止發生繼承

//minivan類不會被擴充套件

sealed class minivan:car

還可以在重寫基類中的虛方法或虛屬性的方法或屬性上使用 sealed 修飾符。

這將使您能夠允許類從您的類繼承,並防止它們重寫特定的虛方法或虛屬性。

class x

protected virtual void f2()

}class y : x

protected override void f2()

}class z : y

// overriding f2 is allowed.

protected override void f2()

}

virtual和override

如果基類希望定義由子類可以重寫的方法,就必須用virtual標誌方法

如果子類希望改變虛方法的實現細節,就必須使用override

子類重寫虛方法不是必需的

partial class employee

....

}class saleperson:employee

...}

abstract

抽象類可以使用abstract將方法標記為抽象的,abstract成員沒有提供任何實現

在子類的成員新增new關鍵字,可以隱藏父類的版本

abstract class shape

// a single abstract method.

public abstract void draw();

public string petname

} class threedcircle : circle

public new string petname

}

asas 運算子用於在相容的引用型別之間執行某些型別的轉換

as 運算子類似於強制轉換操作。

但是,如果無法進行轉換,則 as 返回 null 而非引發異常

expression as type
等效於

expression is type ? (type)expression : (type)null

is檢查物件是否與給定型別相容

如果不相容返回false

繼承,super關鍵字,多型

1.繼承性 格式 class a extends b a 子類,派生類,subclass b 父類,超類,基類,superclass 體現 一旦子類a繼承父類b以後,子類a中就獲取了父類b中宣告的所有屬性和方法。特別的,父類宣告為private的屬性或方法,子類繼承父類以後,仍然認為獲取了父類中的私...

關鍵字 一些關鍵字用法總結

register 用register宣告的變數稱暫存器變數,在可能的情況下會直接存放在機器的暫存器中 但對32位編譯器不起作用,當global optimizations 全域性優化 開的時候,它會做出選擇是否放在自己的暫存器中 不過其它與register關鍵字有關的其它符號都對32位編譯器有效。c...

MySql一些關鍵字

使用distinct關鍵字,只返回不同的值 distinct關鍵字,它必須直接放在列名的前面 eg select distinct id from stu 注意 不能部分使用distinct distinct關鍵字應用於所有列而不僅是前置它的列。如果給出select distinct id,name...