码迷,mamicode.com
首页 > 其他好文 > 详细

附录A培训实习生-面向对象基础(3):方法重载

时间:2014-08-14 23:30:26      阅读:263      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   color   使用   for   ar   div   

就上一篇代码而言,你如果写Cat cat = new Cat();会直接报错错误 :

1       “Cat”方法没有采用“0”个参数的重载 E:\大话设计模式学习\BigDesignPatterns\附录A培训实习生之面向对象基础\动物运动会\AnimalGames\Form1.cs       20     23     AnimalGames

原因就是必要给小猫起名字.如果当真需要不起名字也要生出小猫来,可以采用方法重载.

方法重载提供了创建同名的多个方法的能力,但这些方法需使用不同的参数类型.注意不是只有构造方法可以重载,普通方法也可以.

方法重载:方法名相同,但是参数类型或个数必须不同.

方法重载的好处是什么?

方法重载的好处就是在不改变原方法的基础上,新增功能(方法重载就是提供了函数可扩展的能力).

对Cat进行重载:

 1    class Cat
 2     {
 3         private string name = "";//声明Cat类的私有字符串变量name
 4 
 5         /// <summary>
 6         /// 定义Cat的构造方法,参数是输入一个字符串
 7         /// </summary>
 8         /// <param name="name"></param>
 9         public Cat(string name)
10         {
11             this.name = name;//将参数赋给私有变量name
12         }
13 
14         /// <summary>
15         /// 构造方法重载
16         /// </summary>
17         public Cat() 
18         {
19             this.name = "无名";
20         }
21 
22         public string Shout() 
23         {
24             return "我的名字叫" +name+ "";
25         }
26     }

调用的时候:

1 private void button1_Click(object sender, EventArgs e)
2         {
3             Cat cat = new Cat();//将cat实例化
4             //注意:Cat cat = new Cat();其实做了两件事,
5             //Cat cat;声明一个Cat的对象,对象名是cat
6             //cat = new Cat();将此cat对象实例化
7             MessageBox.Show(cat.Shout());
8         }

附录A培训实习生-面向对象基础(3):方法重载,布布扣,bubuko.com

附录A培训实习生-面向对象基础(3):方法重载

标签:des   style   blog   color   使用   for   ar   div   

原文地址:http://www.cnblogs.com/liubeimeng/p/3913497.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!