轻松运用VB.NET重载新特性

在许多的语言中都支持重载这个概念,在网上收集了一些资料,在这里和大家一起来谈谈吧。VB.NET重载方法是另外一个新特性。VB.NET重载的意思是我们可以在一个类中多次声明相同名字的方法只要每一次的声明都有不同的参数列表。

肃北网站制作公司哪家好,找成都创新互联公司!从网页设计、网站建设、微信开发、APP开发、成都响应式网站建设等网站项目制作,到程序开发,运营维护。成都创新互联公司从2013年开始到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选成都创新互联公司

不同的参数列表意味着在列表中不同类型的数据类型。现在让我们先看看以下的方法声明:

 
 
  1. Public Sub MyMethod(X As Integer, Y As Integer) 

#T#这种方法的参数列表可以看成(integer,integer)。为了重载这种方法,我们必须使用不同的参数列表,例如(integer,double)。当然你还可以改变一下数据类型的顺序,比如(integer,double)和(double,integer)是不同的,这两种也是重载。重载不能只是通过改变函数的返回类型来实现,而是要求参数的数据类型不同。
作为一个例子,假如我们想提供一个搜索的功能并且根据一些条件返回一组数据,具体代码应该为:

 
 
  1. Public Function MyFindData(ByVal Name As String) As ArrayList  
  2. (搜索数据并且返回结果)  
  3. End Function 

在VB 6中,如果我们想基于一些条件增加一个新的搜索选项,就必须增加一个不同名字的函数,也就是说VB 6还没有具备重载的能力。但是现在在VB.NET中,我们可以简单地重载已经存在的函数,这一点和Visual C++很是相似。

 
 
  1. Public Overloads Function FindData(ByVal Name As String) As ArrayList   
  2. (搜索数据并且返回结果)  
  3. End Function  
  4. Public Overloads Function FindData(ByVal Age As Integer) As ArrayList  
  5. (搜索数据并且返回结果)  
  6. End Function   

仔细观察可以发现两种方法的声明都是有相同的方法名字。这一点在VB 6中就不行的,它要求每一个方法名字都不一样。但是,在VB.NET重载中就允许存在相同名字的方法,但其参数要求是不同的。值得一提的是,每一个声明都要加入Overloads关键字。
当重载一个方法的时候,我们可以使用Public、Friend等等的辖域关键字让它有不同的作用域,具体做法只要使用不同的参数列表即可。这就意味着我们可以改变MyFindData方法,使它有不同的作用域:

 
 
  1. Public Overloads Function FindData(ByVal Name As String) As ArrayList   
  2. (搜索数据并且返回结果)  
  3. End Function  
  4. Friend Overloads Function FindData(ByVal Age As Integer) As ArrayList   
  5. (搜索数据并且返回结果)  
  6. End Function   

有了这个改变,在VB.NET工程中其它代码可以使用MyFindData。MyFindData只需要接收一个整型数据作为参数即可。

网站标题:轻松运用VB.NET重载新特性
当前URL:http://www.gawzjz.com/qtweb/news0/209000.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联