一般型別系統中的類別

更新:2007 年 11 月

如果您熟悉物件導向的程式設計方式,就知道類別是定義物件可執行的作業 (方法、事件或屬性),以及定義保留物件狀態的值 (欄位)。雖然類別通常包括定義和實作,但是也可以有一或多個成員沒有實作。

類別的執行個體是物件。您存取物件功能的方式是呼叫它的方法,然後存取它的屬性、事件和欄位。

下表將說明執行階段允許類別具有的某些特性(可透過屬性類別取得的其他特性不包括在這個清單中)。您所使用的語言不一定能使用所有的特性。

特性

說明

sealed

指定無法從這個型別衍生出其他型別。

implements

指出類別會以提供介面成員實作的方式來使用一或多個介面。

abstract

指定您無法建立類別的執行個體。若要使用這個特性,必須從它衍生出其他類別。

inherits

指出類別的執行個體可用於已指定基底類別 (Base Class) 的任何位置。從基底類別繼承的衍生類別可使用基底類別所提供任何虛擬方法的實作,或者,衍生類別也可以用自己的實作來覆寫。

exported 或 not exported

指出是否可在定義類別的組件中看見類別。只適用於最上層 (Top-Level) 類別。

巢狀類別也具有成員特性。如需詳細資訊,請參閱型別成員

沒有實作的類別成員是抽象成員。有一個或多個抽象成員的類別本身就是抽象的;所以無法建立它的新執行個體。有些以執行階段為目標的語言即使沒有任何抽象的成員,也允許您將類別標記為抽象。當您需要封裝一組衍生類別在適當時可繼承或覆寫的基本功能時,可以使用抽象類別 (Abstract Class)。非抽象的類別即稱為實體類別 (Concrete Class)。

類別可實作任意數目的介面,但是只能繼承一個基底類別。所有類別都至少必須有一個建構函式,用來初始化類別的新執行個體。

每一個支援執行階段的語言都會提供方式,指出類別或類別成員具有特定的特性。當您使用語言所要求的語法時,該語言可確保類別和其成員的特性會 (以中繼資料的形式) 與類別的實作儲存在一起。

請參閱

概念

一般型別系統中的介面

參考

System.Object

其他資源

一般型別系統

中繼資料和自我描述元件