八種常用VB.NET語法詳解
VB.NET中有許多語法和其他編程語言相似。不過還是有些另類之處的。那么我們就通過下面介紹的幾種常見的VB.NET語法,來對VB.NET特有的特點進行詳細的解讀。并借此提高我們對VB.NET的認知程度。#t#
VB.NET語法一:Try………Catch………finally………end try 捕獲錯誤
把一個可能出錯的語句放在try后面,如果出錯,執(zhí)行catch語句,catch可以有多個,第一個catch不能捕獲的錯誤,將被下一個catch語句所捕獲。在所有的處理結束后,執(zhí)行finally語句。
在一個try………end try 過程中可以使用catch與finally兩個中的一個,或者兩個一起用。
VB.NET語法二:Protected, private, Public 封裝控制
這三個關鍵字一般放在語句最前面,而會置于overloads與Overrides的后面
public是工程級別外部訪問
protected是本族級別以下內(nèi)部訪問
private是不提供非本地訪問
VB.NET語法三:ByVal sender As Object, ByVal e As System.EventArgs
這是最賞用事件傳遞參數(shù)。被封裝于兩個對象內(nèi),如果你要傳遞相應的參數(shù),要在這兩個對象里面找,如當前鼠標位置為e.X e.Y。在VB.Net中有些事件是要自已動手寫的,如窗體鼠標過程,一般加上這個參數(shù)在后面的括號內(nèi)就解決了。
VB.NET語法四:重載語法Overloads
- class class1
 - public strtem as string
 - overloads public sub subx()
 
重載subx(A狀態(tài))- strtem=”3”
 - end sub
 - overloads public sub subx
 
(x as string) 重載subx(B狀態(tài))- strtem=x
 - end sub
 - end class
 
如果你如果調用subx()中間沒有參數(shù),則VB自動調用重載subx(A狀態(tài)),
- overloads public
 
sub subx()重載subx
(A狀態(tài))- strtem=”3”
 - end sub
 
結果就是strtem=”3”
如果你這樣調用,subx(“這是一個不同的結果”),則VB自動調用重載subx(B狀態(tài))
- overloads public sub
 
subx(x as string)- 重載subx(B狀態(tài))
 - strtem=x
 - end sub
 
結果就是 strtem=“這是一個不同的結果”。您可以在函數(shù)中調用,包括在API中(當然VB.Net不再使用winAPI)。甚至一些至關緊要的過程也不例外:如new過程
- class class1
 - Overloads Public
 
Sub New()- 。。。。。。
 - 。。。。。。
 - end sub
 - Overloads Public
 
Sub New(s as string)- 。。。。。。
 - 。。。。。。
 - end sub
 - end class
 
同樣有兩種調用的方法,如dim as as class1=new class 調用前面一個無參數(shù)的new過程,而dim asb as class1=new class(“string”)調用第二個new 過程.切記,如果一個過程或一個函數(shù)只有一種狀態(tài),不能這樣運用。如果您試圖使用overloads關鍵字,則VB.Net會出現(xiàn)錯誤的提示要求你移去overloads
VB.NET語法五:Overrides改寫
如常見的dispose過程:
- Overrides Public
 
Sub Dispose()- MyBase.Dispose
 - components.Dispose
 - End Sub
 
Overrides表示完全的改寫父類提供的過程與函數(shù),不過要記住使用改寫的前提是在父類的同一過程或函數(shù)的前面也使用了overrides關鍵字
VB.NET語法六:mybase.new 與mybase.dispose
- ublic Sub New()
 - MyBase.New
 - Form1 = Me
 - InitializeComponent
 - End Sub
 - Overrides Public
 
Sub Dispose() '- MyBase.Dispose
 - components.Dispose
 - End Sub
 
這兩個過程是任何一個新建工程都會有的,mybase.new是調用當前類的父類的new過程,同樣你也可以加上參數(shù)配合父類的重載New過程。如:
- Overloads Public Sub New ()
 - MyBase.New()
 - End Sub
 - Overloads Public
 
Sub New (string)- MyBase.New(string)
 - End Sub
 
VB.NET語法七:Structure構造
自定義類型,如:
- Structure Type1
 - Dim x as y
 - Dim a as b
 - 。。。。。。。
 - end structure
 
這個取代VB6中的使用type………end type方式自定義類型的方法。
VB.NET語法八:return返回值
- function functionname()
 - return X。。。。。。
 - end funtion
 
他的作用與下面一樣:
- function functionname()
 - functionname = X。。。。。。
 - end funtion
 















 
 
 
 
 
 
 