今天同学发来一个问题,让我很纠结!!

/// <summary>
        /// 显示信息
        /// </summary>
        /// <param name="message"></param>
		public void ShowMessage(string message)
		{
			ShowMessage(message, true);
		}
        /// <summary>
        /// 显示信息(是否清空前面信息)
        /// </summary>
        /// <param name="message"></param>
        /// <param name="clearExistingMessages"></param>
		public void ShowMessage(string message, bool clearExistingMessages)
		{
			if (clearExistingMessages) 
				this.Message = message;
			else
				this.Message += " " + message;

			this.ShowMessagePanel = true;
			this.Visible = true;
		}

 

虽然我不懂C#,但是他跟我说这个是多态我就很郁闷了,我怎么看也就是函数重载啊!!然后查资料,结果如下

重载多态是两个概念。

重载:是说方法的重载。
要求是
1:相同的方法名
2:参数列表不同(也就是参数的类型不同 或者是 参数的个数不同 再或者是 参数出现的次序不同)
3:返回值可以不同,但是最好是相同的。

多态:只有在发生继承的时候才会出现多态。
多态又分为 类的多态 和 方法的多态(就是方法的重写)。

答案补充

上面说的多态是类多态!!!

多态一般分为:
1.基本类型的多态
2.方法的多态
3.类和接口的多态
4.传参的多态

而一般说的 多态 都是特指 类和接口 的多态。

其实方法的多态就是方法的 重载和重写。

重载就是方法多态的一种,而多态是分很多种的,所以不能说它们两个是一样的。

结果,方法原来也有多态,我很纠结,第一次知道!!

posted on 2012-02-09 14:06  Tony.Shao  阅读(208)  评论(4编辑  收藏  举报

导航