VB.NET语法小结1

要想学会走路,先学会导入命名空间。
Imports System


一、(1)定义一个变量,并且初始化。
      Dim strText As String = ""
      或 者
      Dim strText As String 
      strText=""
    (2)实例化一个类或对象
      Dim openFileDialog1 As New OpenFileDialog()
      Dim clsClass As New ClsClass()
     (3)声明一个数组
      Dim  fileNames As String() = New  String(3) {}
      fileNames(0)="张 三 "
      fileNames(1)="李 四"
      fileNames(2)="王 五"
     (4)声明一个泛型类型
      Dim list As New List(Of T)()
    
二、异常处理。
  Try
  Catch ex As Exception
    Throw New Exception(ex.Message, ex)
  End Try


三、 条件判断语句
If...Then
...
ElseIf...Then
...
Else
...
End if
四、循环数组和集合
 For i As Integer = 0 To openFileDialog1.FileNames.Length - 1
           //exit for
  Next


 For Each item In List
           //exit for
 Next


五、过程和函数
Public Sub 函数名称(ByVal/ByRef  参数名  As Integer) as 类型


End Sub
Public Function 函数名称(ByVal/ByRef  参数名  As Integer) as 类型
  'vb6.0 带返回值的函数写法
 Dim str1 As String = "111"
 'Result = str1
 '也可以用vb.net中的关键值Return返回即可。
  Dim str2 As String = "222"
 Return str2
End Function
六、vb.net 中的模块(Module),一般用途一般只用来定义全局变量和公用方法。
Class   ClassName 
      public   shared   Function   fnXXX() as string   ' shared指的是静态方法相当于C#里                                 面的Static关键字。  
      ... 
      End   Function 
End   Class 
类似 
直接使用ClassName.fnXXX()调用。 也可以直接fnXXX()调用
Module   ModuleName 
      public   Function   fnXXX() as string
      ... 
      End   Function
End   Module 
调用:ModuleName.fnXXX()。也可以fnXXX()直接调用。
-------------------------------------------------------------------------------------------
模块(Module)里面可以直接有方法,这些方法自动就是静态的(或者称为共享的——VB.NET中的关键字是Shared),这些方法可以直接调用,所以Module是无法实例化,也没有必要实例化的
模块无法继承,也无法实现接口
模块里面可以有类,但其实这个类并不需要真的通过模块作为前缀来引用。所以模块有点虚的概念
模块可以被组织到命名空间中去,因为模块其实是个虚的,所以它的方法也可以直接外层的命名空间调用。




    


七、多个相同事件,同用同一个事件。
VB.NET
Private Sub rdbFeedChannelAny_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbFeedChannel1.Click, rdbFeedChannel2.Click, rdbFeedChannel3.Click


Exit Sub


C#
Designer
this.radioButton1.CheckedChanged += new System.EventHandler(radioButton_CheckedChanged);
this.radioButton2.CheckedChanged += new System.EventHandler(radioButton_CheckedChanged);


Code;
    private void radioButton_CheckedChanged(object sender, EventArgs e)
        {
            if(this.radioButton1.Checked)
            {
                   
            }
        }
八、Overloads 关键字,实现重载函数。
class1 
  Overloads Public Sub New() //构造函数。
  。。。。。。 
  。。。。。。 
  end sub 
  Overloads Public Sub New(s as string) 
  。。。。。。 
  。。。。。。 
  end sub 
end Class
九、
withevents用于声明对象,用它声明的对象拥有自己的事件。当这个对象内部有RaiseEvent的时候,外部就会接收到。 


handles就是接收这个withevents对象事件用的。比如你的一个对象有一个事件A,在执行的过程中,这个对象RaiseEvent   A,那么调用者的handles   对象.A   的SUB就会被执行。
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
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值