什麼是類別?
更新:2007 年 11 月
在本課程中,您將學習如何使用類別來表示程式中的物件。
您在先前的課程中已經學到,Visual Basic 程式是用表單或控制項等物件所建置而成。物件也可以用來表示真實世界的事物,例如人、電腦,或甚至是更抽象的,例如銀行帳戶。
「類別」就是一種物件的表示,可以視為描述物件的藍圖。就像單一藍圖可用來建造許多建築物一樣,類別也可以用來建立多個物件複本。
雖然您可能並不知道,但是其實您已經使用過類別了。例如,TextBox 控制項是以 TextBox 類別所定義,這個類別會定義其外觀及功能。每次您將 TextBox 控制項拖曳到表單上時,其實是在建立 TextBox 類別的新「執行個體」(Instance)。
每個 TextBox 控制項對於定義它的 TextBox 類別而言,都是完全相同卻又獨立的複本。因為每一個物件都是類別的「執行個體」,因此建立類別的動作就稱為「執行個體化」。
到目前為止,您都是從 [工具箱] 拖曳,將 TextBox 控制項加入至表單中,不過其實也可以用 New 關鍵字宣告,在程式碼中將 TextBox 物件執行個體化。
Dim Textbox1 As New TextBox
您將在以下課程中,進一步了解建立及使用類別的詳細資訊。
類別的內容為何?
在先前的課程:詳述:了解屬性、方法和事件中,您了解到所有物件都有描述其屬性 (Attribute) 的屬性 (Property)、定義其動作的方法,以及定義其回應的事件。同樣地,定義物件的類別本身也有屬性、方法和事件 (有時稱為「成員」),而這些項目會傳遞給該類別的所有執行個體。
例如,表示銀行帳戶的類別可能會有例如 AccountNumber 或 AccountBalance 的屬性、CalculateInterest 的方法,以及 BalanceChanged 的事件。一旦將銀行帳戶物件執行個體化以後,您就可以存取其屬性、方法和事件,就跟 TextBox 之類物件一樣。
有些類別的成員是私用的,只能由類別內的程式碼加以存取。例如,銀行帳戶類別可能會有計算餘額的方法。您可能會想要允許程式讀取餘額,但是不要讓程式直接變更餘額。
您可以將成員宣告為 Private,藉以隱藏類別中的成員,也可以將成員宣告為 Public,藉以公開類別中的成員。此外,您還可以將屬性宣告為 ReadOnly,以允許程式存取屬性,但防止程式變更其值。下列程式碼顯示 BankAccount 類別可能會是什麼樣子。
Class BankAccount
Private AccountNumber As String
Private AccountBalance As Decimal
Public Sub UpdateBalance()
' add code to recalculate balance.
End Sub
ReadOnly Property Balance() As Decimal
Get
Return AccountBalance
End Get
End Property
End Class
後續步驟
在本主題中,您了解到類別的基本概念,以及一些新的術語。在下一個課程中,您將學習如何建立類別。
下一個課程:模型化真實物件:建立第一個類別。