VB.Net基礎語法


VB.Net是一種物件導向的程式設計語言。在物件導向程式設計方法中,一個程式由各種通過動作相互作用的物件組成。 物件可能採取的操作稱為方法。相同型別的物件被認為具有相同的型別,或者更經常地說成是在同一類中。

考慮一個VB.Net程式結構時,它可以被定義為通過呼叫彼此的方法進行通訊的物件的集合。現在來簡單地看看下面的解釋:類,物件,方法和範例變數分別是什麼意思?

  • 物件 - 物件具有狀態和行為。 例如:狗有狀態 - 顏色,名稱,品種和行為 - 搖擺,吠叫,吃東西等等。一個物件是一個類的一個範例。
  • - 一個類可以被定義為描述型別物件支援的行為/狀態的模板/藍圖。
  • 方法 - 一種方法基本上是一種行為,一個類可以包含很多方法。在邏輯被寫入的方法中,操縱資料並且執行所有動作。
  • 範例變數 - 每個物件都有其唯一的一組範例變數。物件的狀態由分配給這些範例變數的值建立。

VB.Net中的Rectangle類

例如,假設有一個Rectangle物件。它具有像長度和寬度的屬性。根據設計,可能需要接受這些屬性的值,計算面積和顯示細節的方法。

下面來看看一個Rectangle類的實現,並根據這個類的實現程式碼來討論VB.Net的基本語法:

Imports System
Public Class Rectangle
    Private length As Double
    Private width As Double

    'Public methods'
    Public Sub AcceptDetails()
        length = 4.5
        width = 3.5
    End Sub

    Public Function GetArea() As Double
        GetArea = length * width
    End Function
    Public Sub Display()
        Console.WriteLine("Length: {0}", length)
        Console.WriteLine("Width: {0}", width)
        Console.WriteLine("Area: {0}", GetArea())

    End Sub

    Shared Sub Main()
        Dim r As New Rectangle()
        r.Acceptdetails()
        r.Display()
        Console.ReadLine()
    End Sub
End Class

當上面的程式碼被編譯並執行時,會產生以下結果:

Length: 4.5
Width: 3.5
Area: 15.75

在前一章中,我們建立了一個包含程式碼的Visual Basic模組。 Sub Main表示VB.Net程式的入口點。 在這裡使用包含程式碼和資料的類,使用類來建立物件。 例如,在程式碼中,r是一個Rectangle物件。

一個物件是一個類的範例:

Dim r As New Rectangle()

如果這樣指定的話,一個類可以有可以從外部類存取的成員。資料成員被稱為欄位,程式成員被稱為方法。

可以呼叫共用方法或靜態方法而不建立類的物件。範例方法通過類的一個物件來呼叫:

Shared Sub Main()
   Dim r As New Rectangle()
   r.Acceptdetails()
   r.Display()
   Console.ReadLine()
End Sub

識別符號

識別符號是用於標識類,變數,函式或任何其他使用者定義專案的名稱。VB.Net中命名類的基本規則如下:

  • 識別符號名稱必須以字母,數位(0-9)或下劃線後面的字母開頭。識別符號中的第一個字元不能是數位。
  • 它不得包含任何嵌入的空間或符號: ? - + ! @ # % ^ & * ( ) [ ] { } . ; : " ' /\。但是,可以使用下劃線(_)。
  • 它不應該是一個保留的關鍵字。

VB.Net關鍵字

下表列出了VB.Net保留的關鍵字:

AddHandler AddressOf Alias And AndAlso As Boolean
ByRef Byte ByVal Call Case Catch CBool
CByte CChar CDate CDec CDbl Char CInt
Class CLng CObj Const Continue CSByte CShort
CSng CStr CType CUInt CULng CUShort Date
Decimal Declare Default Delegate Dim DirectCast Do
Double Each Else ElseIf End End If Enum
Erase Error Event Exit False Finally For
Friend Function Get GetType GetXML Namespace Global GoTo
Handles If Implements Imports In Inherits Integer
Interface Is IsNot Let Lib Like Long
Loop Me Mod Module MustInherit MustOverride MyBase
MyClass Namespace Narrowing New Next Not Nothing
Not Inheritable Not Overridable Object Of On Operator Option
Optional Or OrElse Overloads Overridable Overrides ParamArray
Partial Private Property Protected Public RaiseEvent ReadOnly
ReDim REM Remove Handler Resume Return SByte Select
Set Shadows Shared Short Single Static Step
Stop String Structure Sub SyncLock Then Throw
To True Try TryCast TypeOf UInteger While
Widening With WithEvents WriteOnly Xor