C#方法重载(overload)

来源:互联网 发布:苹果mac系统如何更新 编辑:程序博客网 时间:2024/06/04 20:14

c#方法重载

方法重载:同一个作用域内发生(比如一个类里面),定义一系列同名方法,但是方法的参数列表不同。这样才能通过传递不同的参数来决定到底调用哪一个。

        值得注意的是,方法重载只有通过参数不同来判断调用哪个方法,而不能通过返回值。至于原因,可以这样理解,你调用一个方法,如果有多个方法同名,系统必须要知道到底你要调用哪一个,参数可以帮助系统在方法入口处得到答案,他根据你给的参数就知道该使用哪个方法。如果只有返回值的不同,很多情况系统是不可能得到有效的判断条件的,比如:double method();int method();如果你这样调用:method()。系统当然不知道该调用哪个。

示例:

 //返回值相同,参数不同

   

[csharp] view plaincopyprint?
  1. class  BillPayment  
  2.    {  
  3.        void PayBill(int TelephoneNumber)  
  4.        {  
  5.            //此方法用于支付固定电话费  
  6.        }  
  7.        void PayBill(long CustomerNumber)  
  8.        {  
  9.            //此方法用于支付电费  
  10.        }  
  11.        void PayBill(long CustomerNumber,double amount)  
  12.        {  
  13.            //次方法用于支付移动电话费  
  14.        }  
  15.    }  

 

//返回值相同,参数个数不同

[csharp] view plaincopyprint?
  1. class Add  
  2. {  
  3.     int addtion(int num1,int num2)  
  4.     {  
  5.         return num1+num2;  
  6.     }  
  7.     int addtion(int num1,int num2,int num3)  
  8.     {  
  9.         returnnum1+num2+num3;  
  10.     }  
  11. }  


 

//参数不同,返回值不同

[csharp] view plaincopyprint?
  1. int Method(int[] numbers)  
  2. {  
  3. }  
  4. double Method(double[] numbers)  
  5. {  
  6. }  
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 守护宝老年机打不开了怎么办 小米电话手表坏了怎么办 小米手表带坏了怎么办 小米电话手表屏幕坏了怎么办 雷诺梅甘娜06款系统错乱怎么办 轿车碰了一个坑怎么办 车子卖了没过户怎么办 9岁儿童肠胃痉挛怎么办 鹿角胶水放多了怎么办 打胰岛素血糖还是高怎么办 血糖高打胰岛素降不下去怎么办 儿童低烧37度1怎么办 小孩发烧一会冷一会热怎么办 月子里得的风湿怎么办 腰窝中间凸起肉怎么办 线雕后一个月脸发红肿胀怎么办 雷诺氏病手指僵硬疼怎么办 哺乳妈妈吃咸了怎么办 吃流产药哺乳了怎么办 坐月子吃咸了怎么办啊 拔罐放血后头晕怎么办 e道航界面不动怎么办 微信必须打开位置权限怎么办 魅族sim卡未启用怎么办 苹果6sgps信号弱怎么办 苹果5s4g网络慢怎么办 苹果5s上网很慢怎么办 手机一体机死机关不了机怎么办 联想一体机关不了机怎么办 纸巾盒的吸盘老化了怎么办 粘的挂钩老掉怎么办 车载手机支架吸盘吸不住怎么办 吸盘吸不住怎么办才好? 行车记录仪吸盘吸不住怎么办 小米儿童手表二维码丢了怎么办 艾蔻手表二维码丢失了怎么办 玩具直升机遥控器坏了怎么办 玩具飞机遥控器坏了怎么办 玩具无人机遥控器坏了怎么办 玩具遥控车遥控器坏了怎么办 用遥控器关电视后打不开怎么办