函数重载

       内容函数重载不是很。我也用他们的一种。或者一些其他神秘。未使用,不过大概看了,它们是相似的吧。用一句话说就是:大一些的名字,都有不同的用途。

       就拿我比較熟悉的VB.NET来说吧。当你调用一个系统的函数时,假设他是一个重载了的函数。你会看到參数的提示行有2个三角,例如以下图:


       点击三角形就会翻页。并且显示数量或类型或数量和类型等不同的參数,可是你会发现函数的名字(SelectRechargeRecord())没有改变。当你依照当中的參数类型或个数把參数传进去之后,这个函数运行的就非常可能不是同一种功能

       那么这样有什么优点呢?

       假如你数据库中实用户表T_UserInfo。你登陆的时候,用一个查询的函数(Iuser.QueryUserInfo(UserName))来查询username和password是否正确,此时你仅仅要把username传进去就能够查出一行username和password的记录。然后你的系统另一个功能是把全部用户信息都查出来,相同是查询。相同是用户信息。你是否会另起一个函数名呢?假设以后还有很多其它中方式的查询,那你就要起非常多个不同的但却是用来查询用户信息的名称的函数了?这样不太好吧,要记的太多了,有时眼花缭乱的。

       那么函数重载就能解决问题。

    Overloads Function SelectRechargeRecord(ByVal FieldName As String, ByVal SelectContent As String)
    Overloads Function SelectRechargeRecord(ByVal StartDate As Date, ByVal EndDate As Date)
    Overloads Function SelectRechargeRecord()

       这几个函数名称都一样,可是參数类型或者个数都不一样。第一个是通过字段名和查询内容去查询,第二个是通过起始日期和终止日期去查询,第三个是什么參数都没有就查整张表呗。

可是前面一定要加个keywordOverloads即可。至于这三个函数里面的代码。就根据你參数来写了。

       关于函数的重载还有非常多种。刚才是对方法的重载,你还能够对运算符重载。事实上也跟重载方法一样,你把方法重载了,方法名称一样但却由于參数不一样而运行不同的功能,运算符也是相同的运算符却有着不同的功能,就像你看见的1+1=2,重载运算符+之后,根据你的代码。有可能1+1=10或其他。


版权声明:本文博客原创文章。博客,未经同意,不得转载。

原文地址:https://www.cnblogs.com/mengfanrong/p/4614480.html