日期:2012-10-25  浏览次数:20475 次

走近VB.Net(八) 常用语法
一:Try………Catch………finally………end try 捕获错误


把一个可能出错的语句放在try后面,如果出错,执行catch语句,


catch可以有多个,第一个catch不能捕获的错误,将被下一个catch语句所捕获。在所有的处理结束后,执行finally语句。


在一个try………end try 过程中可以使用catch与finally两个中的一个,或者两个一起用,


二:Protected, private, Public 封装控制


这三个关键字一般放在语句最前面,而会置于overloads与Overrides的后面


public是工程级别外部访问


protected是本族级别以下内部访问


private是不提供非本地访问


三:ByVal sender As Object, ByVal e As System.EventArgs  这是最赏用事件传递参数。被封装于两个对象内,
如果你要传递相应的参数,要在这两个对象里面找,如当前鼠标位置为e.X e.Y。在VB.Net中有些事件是要自已动手写的,
如窗体鼠标过程,一般加上这个参数在后面的括号内就解决了。


四:重载语法Overloads

如:class class1

public strtem as string

overloads public sub subx()重载subx(A状态)

strtem=”3”

end sub

overloads public sub subx(x as string) 重载subx(B状态)

strtem=x

end sub

end class

如果你如果调用subx()中间没有参数,则VB自动调用重载subx(A状态),

overloads public sub subx()重载subx(A状态)

strtem=”3”

end sub

结果就是strtem=”3”

如果你这样调用,subx(“这是一个不同的结果”),则VB自动调用重载subx(B状态)

overloads public sub subx(x as string) 重载subx(B状态)

strtem=x

end sub

结果就是 strtem=“这是一个不同的结果”



您可以在函数中调用,包括在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 调用前面一个无参数的new过程,

而dim asb as class1=new class(“string”)调用第二个new 过程.



切记,如果一个过程或一个函数只有一种状态,不能这样运用。如果您试图使用overloads关键字,则VB.Net会出现错误的提示要求你移去overloads

五:Overrides改写

如常见的dispose过程:

Overrides Public Sub Dispose()

MyBase.Dispose

components.Dispose

End Sub

Overrides表示完全的改写父类提供的过程与函数

不过要记住使用改写的前提是在父类的同一过程或函数的前面也使用了overrides关键字

六: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过程,同样你也可以加上参数配合父类的重载New过程。如:

Overloads Public Sub New ()


MyBase.New()


End Sub


Overloads Public Sub New (string)


MyBase.New(string)


End Sub


七:Structure构造


自定义类型,如:


Structure Type1


Dim x as y


Dim a as b


。。。。。。。


end structure


这个取代VB6中的使用type………end type方式自定义类型的方法。


八:return返回值
function functionname()
return X。。。。。。
end funtion
他的作用与下面一样:




function functionname()
functionname = X。。。。。。
end funtion