zoukankan      html  css  js  c++  java
  • VB.NET语法小结

    本人精通C#编程,VB没有开发经验,项目维护需要,特意整理了下VB语法,进行恶补。编程思想都是互通的,都是微软生的,语言大同小异。

    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就会被执行。
    你的一分支持,是我坚持创作的十分动力。 如果文章的内容对你有帮助的话,请用微信扫描下方二维码,支持一下。谢谢! wechat1
  • 相关阅读:
    自我介绍
    你所不知道的良心网站第二弹
    你所不知道的良心网站第一弹
    python网络爬虫之解析网页的XPath(爬取Path职位信息)[三]
    绝对值得一用的十大软件
    现在的建站之旅[]~( ̄▽ ̄)~*
    python网络爬虫之解析网页的BeautifulSoup(爬取电影图片)[三]
    python网络爬虫之解析网页的正则表达式(爬取4k动漫图片)[三]
    python网络爬虫之自动化测试工具selenium[二]
    python网络爬虫之入门(requests模块)[一]
  • 原文地址:https://www.cnblogs.com/shuilong/p/8522762.html
Copyright © 2011-2022 走看看