Visual Basic .NET/類
外觀
類概念是面向物件程式設計的主要基礎。在一個圖形使用者介面和更復雜程式的世界中,類已經成為程式設計中非常重要的部分。
要建立一個類,在解決方案資源管理器中,右鍵單擊應用程式,選擇新增,然後選擇類。或者從選單欄的專案選單中選擇“新增類...”。
物件: 具有自身屬性和方法的單元,供使用者自行使用。
封裝: 允許類使用者控制類的資料和操作,這些資料和操作可以從其他類中看到。
屬性: 表示與例項關聯的資料值。
方法: 類可以執行的操作。
建構函式: 當類的物件被例項化時呼叫的方法。
欄位: 類級別的變數。
欄位是在類內部但不在函式、子例程和屬性內部的變數。這些變數也不允許在類外部呼叫。宣告這些變數很簡單,如本類段所示
Public Class customer
Private Name As String
Private Address As String
Private Age As Integer
...
類可以透過 "Me" 呼叫輕鬆呼叫這些變數。請檢視本類段以瞭解如何操作
...
Public Function GetName()
Return Me.Name
End Function
...
嘗試在類外部呼叫私有欄位將不起作用。
當宣告類的新的物件時,我們可以初始化類的欄位。例如,請檢視本類段
Public Class customer
Public Name As String
Private Address As String
Private Id_number As String
' Constructor with parameters
Public Sub New(ByVal name As String)
Me.Name = name
End Sub
' Constructor with no parameters
Public Sub New()
End Sub
...
從技術上講,沒有引數的建構函式稱為空建構函式或預設建構函式。具有引數的建構函式稱為自定義建構函式。
屬性分為兩類:獲取器和設定器。獲取器從類返回一個值,就像函式的工作原理一樣,而設定器將一個值設定到類中。
Public Property name() As String
Get
Return Me.Name
End Get
Set(ByVal value As String)
Me.Name = value
End Set
End Property
因為這個類屬性是 "Public",所以我們可以在類外部訪問它。如果它是 "Private",則正好相反。
方法基本上是特定於類的子例程。這些可以根據程式設計師的意願呼叫任意次數。
我們使用關鍵字 "New"
Dim customer1 = New customer("John Doe")
MsgBox(customer1.name)
這僅僅是使用以上所有技術的類示例
Public Class customer
' Fields
Private Name As String
Private Address As String
Private Age As Integer
Private Items_Bought As Integer
' Constructor with a parameter
Public Sub New(ByVal value As String)
Me.Name = value
End Sub
' Default Constructor
Public Sub New()
End Sub
' Name Properties
Public Property name() As String
Get
Return Me.Name
End Get
Set(ByVal value As String)
Me.Name = value
End Set
End Property
' Address Properties
Public Property Address() As String
Get
Return Me.Address
End Get
Set(ByVal value As String)
Me.Address = value
End Set
End Property
' Age Properties
Public Property Age() As Integer
Get
Return Me.Age
End Get
Set(ByVal value As String)
Me.Age = value
End Set
End Property
' Items_Bought Properties
Public Property Items_Bought() As Integer
Get
Return Me.Items_Bought
End Get
Set(ByVal value As String)
Me.Items_Bought = value
End Set
End Property
End Class