VB.Net - 基本语法

引言

        Visual Basic.NET是基于微软.NET Framework之上的面向对象的编程语言。可以看作是Visual Basic在.NET Framework平台上的升级版本,增强了对面向对象的支持

        需要注意的是,VB.NET需要在.NET Framework平台上才能执行

简介

        在我看来,VB.NET除了在语法上还保留VB的特性外,其他很多方面,都有很大的不同。或许是因为有这些不同点,才使得VB.NET的功能更强大,更有生命力,同时也为VB程序员转型为VB.NET程序员带来了困难。因为VB.NET提出了很多新的功能、概念和观点,掌握VB.NET不仅要掌握语法,还需要理解并运用这些新的功能、概念和观点。当然也需要掌握.Net框架,理解CLR

一、数据类型


二、变量声明

        在VB中,变量声明有很多限制,其中之一就是不能同行声明多个变量。如果一定要在一行中声明多个变量,就一定要指明每个变量的类型,否则将被默认为Variant类型。第一行的a1是Variant类型,a2是Integer类型。第二行的两个变量都是Integer类型。

Dim a1, a2 As Integer    
Dim a3 As Integer, a4 As Integer  

        在VB中不能同时声明和初始化变量,而VB.NET则支持这个特性。VB.NET支持同行声明多个变量,如下:

Dim a1, a2, a3 As Integer   

三、数组
        VB.NET对数组做了明显的改动。在VB.NET中,需要格外注意数组范围问题。VB默认数组下界为0,所以数组中的元素数量与数组上界值加1。下面的数组界限从A(0)到A(10),共有11个元素:

Dim A(10) As Single  

四、布尔操作符

       VB中的And、Or或者是Xor语句是按位操作符。而在VB.NET中,它们是布尔操作符。执行这些操作将返回true或false。VB.NET引入新操作符来完成按位操作

五、不支持Set语句

       VB中使用Set语句指派对象,如下:

Set myObj = new MyObject    
Set a = b    

      在VB.NET中,不需要使用Set指派对象。如下:

myObj = new MyObj()    
a = b    

六、new和nothing关键字

       VB中,AS、New和Nothing关键字用于声明一个对象并初始化它。VB.NET不支持隐式创建对象

七、数据访问

       不同点主要表现在:数据访问技术、数据访问具体实现方法和数据绑定上的不同。

       在数据访问技术上,VB 6.0是通过ADO(Active X Data Object,即:Active X数据对象)来实现对数据库访问的。同时为了保证对早期版本的兼容,也提供RDO(远程数据对象)和DAO(数据访问对象)二种数据访问技术。在 VB.NET中是使用ADO.NET来访问数据库,ADO.NET是.NET框架的一部分,其对应的类库是.Net FrameWork SDK的真子集。ADO和ADO.NET这两种技术在概念、功能和实现上都有许多差异。由于篇幅所限,这里就不一一介绍了。其实在VB.NET中也可以使用ADO来访问数据库,但ADO在VB.NET中是以COM组件的形式出现的,通过添加引用才可以在VB.NET中使用。添加引用的过程,其实就是对COM组件互操作。经过互操作后的COM组件,已经并非先前意义上的COM组件,而是转变成可供VB.NET直接使用的.Net类库。

        在数据访问的具体实现方法上,VB 6.0实现数据访问主要是两种方法:其一是在程序设计阶段,可通过把数据源绑定到ADODC控件或使用数据环境;其二在运行时,可以通过编程方式创建记录集RecordSet对象并与记录集对象交换数据。同样在VB.NET中实现数据访问的方法主要也是二种:其一是在程序设计阶段,通过创建、配置数据适配器DataAdapter和生成数据集DataSet;其二在运行中,通过编程方式动态创建、配置数据适配器和创建、生成数据集。

        在数据绑定(Data Bind)上,在VB 6.0中实现数据绑定通过设置控件的下列属性来实现:DataChanged、DataField、DataFormat、DataMember 和 DataSource。通常是把控件的显示属性绑定到数据源中的相应字段。在VB.NET中,数据绑定的应用范围可广泛得多,VB.NET中可以将任何控件的任何属性绑定到包含数据的任何结构中。

结语

       以上就是对VB与VB.NET做的一个小小的对比。VB与VB.NET虽然vb.net教程有很多相似的地方,但是仔细看看还是有很大的不同的。
————————————————
版权声明:本文为CSDN博主「时光无声_l」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/liuziteng0228/article/details/55252762

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
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、付费专栏及课程。

余额充值