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就会被执行。
VB.NET语法小结的更多相关文章
- [转]c#.NET和VB.NET语法的比较
本文转自:http://www.cnblogs.com/lify0407/archive/2007/08/01/838589.html c#.NET和VB.NET语法的比较 VB.NET C# C ...
- ASP.NET Razor C# 和 VB 代码语法
ylbtech-.NET: ASP.NET Razor C# 和 VB 代码语法 Razor 不是一种编程语言.它是服务器端的标记语言. 1. C# 和 VB 代码语法返回顶部 Razor 同时支持 ...
- IT兄弟连 HTML5教程 HTML5的基本语法 小结及习题
小结 一个完整的HTML文件由标题.段落.列表.表格.文本,即嵌入的各种对象所组成,这些逻辑上统一的对象称为元素.HTML文档主体结构分为两部分,一部分是定义文档类型,另一部分则是定义文档主体的结构框 ...
- XML语法小结
语法结构主要要求: (1)有且仅有一个根元素. 根元素也称文档元素,整个 XML 文档的其他元素都包含在根元素中,并通过嵌套形成树 型结构.除了根元素外,其他元素都是子元素. (2)每个元素必须有开始 ...
- Markdown基础语法小结
一.前言 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. --摘自百度百科 没想到一向不太靠谱的百度百科这次竟有了如此精辟的解释. ...
- python的语法小结
break 与continue的区别: 1.break是直接中断全部循环 2.continue则是在只不执行此次所循环的东西,其它循环依旧执行,比方说只是跳过第4次循环,第5次循环照常进行. \n 表 ...
- [MarkDown] markdown语法小结
目录 写在前面 目录 特殊字符自动转换 段落和换行 第一阶标题 第二阶标题显示效果有下划线 H1 H2有下划线 H3 区块引用 列表 代码区块 分割线 链接 强调 删除线 代码 图片 反斜杠 表格 g ...
- Markdown基本语法小结
目录 Typore Markdown基本语法 1.标题 一级标题 二级标题 三级标题 2.字体加粗 3.斜体 4.文本高亮 5.上标 6.下标 7.引用代码 1 8.代码引用2 9.代码引用3 10. ...
- [sh]shell语法小结
参考 基础语法 数字比较 -lt -eq -gt [ `ps -ef|grep nginx|grep -v grep|wc -l` -eq 0 ] str比较 == != [ $USER == &qu ...
随机推荐
- docker学习笔记-命令大全
容器生命周期管理 • Run OPTIONS说明: • -a :显示所有的容器,包括未运行的. • -f :根据条件过滤显示的内容. • --format :指定返回值的模板文件. • -l :显示最 ...
- form表单保存和取出
function saveConfig() { var configName = document.title; if (!localStorage) return; var Config = {}; ...
- Oracle DBLINk的使用
Oracle中自带了DBLink功能,它的作用是将多个oracle数据库逻辑上看成一个数据库,也就是说在一个数据库中可以操作另一个数据库中的对象,例如我们新建了一个数据database1,我们需要操作 ...
- SSM_CRUD新手练习(7)Spring单元测试分页请求
好久没写这个系列博客了是因为本人去公司实习去了,公司用的是Spring+SpingMvc+Hibernate现在有时间了不管怎么样继续把这个项目写完. 因为机器的原因,我的环境变成了IDEA+orac ...
- 第四周Access的总结
一.问;这节课你学到了什么知识? 答:这周我们学习了新的课程:表的建立和管理.这是Access最重要的一部份,需要我们认认真真学习! 字段是表最重要的信息,而数据类型是字段或表中 ...
- Codeforces828 D. High Load
D. High Load time limit per test 2 seconds memory limit per test 512 megabytes input standard input ...
- ubuntu 14.04下搭建esp32开发环境
esp32是乐鑫出品的一款集成了wifi和蓝牙的集成模块,板上自带两个哈佛结构的Xtensa LX6 CPU双核处理器,本文主要讲解如何在linux下搭建其编译开发环境. 首先ctrl+alt+t打开 ...
- Altera 在线资源使用
Altera 在线资源使用 Altera 在线资源使用 1 1.Altera中文版 2 2.建立myaltera账户 获取官网信息与支持 2 3系统化的设计资源 2 3.1.设计实例 2 3.2.参考 ...
- SRC列表收集
阿里asrc https://security.alibaba.com/百度bsrc http://sec.baidu.com/views/main/index.html顺丰sfsrc http:// ...
- Hadoop 综合揭秘——MapReduce 基础编程(介绍 Combine、Partitioner、WritableComparable、WritableComparator 使用方式)
前言 本文主要介绍 MapReduce 的原理及开发,讲解如何利用 Combine.Partitioner.WritableComparator等组件对数据进行排序筛选聚合分组的功能.由于文章是针对开 ...