C#中重载(overload)和覆写(override)的区别
2012-07-31 23:37
337 查看
1.重载(overload)
用于同一类中或是父子关系类中。它提供了一种机制,相同的函数名通过不同的返回值类型及参数来表示区分的机制。
2.覆写(override)
使用override修饰符修饰方法、属性、索引和事件。它不能重写非虚拟方法或静态方法,重写的基方法必须是虚拟的、抽象或者重写的。也就是说,用override重写的基方法的必须是virtual、abstract或者override。
3.本质区别:
覆写(override)的基方法和覆写方法两个函数的函数特征相同;重载(overload)的两个函数函数名虽然相同,但是函数特征不同。
(PS:函数特征包括函数名、参数的个数和类型)
用于同一类中或是父子关系类中。它提供了一种机制,相同的函数名通过不同的返回值类型及参数来表示区分的机制。
2.覆写(override)
使用override修饰符修饰方法、属性、索引和事件。它不能重写非虚拟方法或静态方法,重写的基方法必须是虚拟的、抽象或者重写的。也就是说,用override重写的基方法的必须是virtual、abstract或者override。
3.本质区别:
覆写(override)的基方法和覆写方法两个函数的函数特征相同;重载(overload)的两个函数函数名虽然相同,但是函数特征不同。
(PS:函数特征包括函数名、参数的个数和类型)
相关文章推荐
- 【经典】C#中隐藏(new)、方法重写(override)、重载(overload)的区别
- 重载(Overload )和覆写(override)的理解及区别
- 重载(Overload)、覆写(Override)和隐藏(hide)的区别
- C#中隐藏(new)和方法重写(override)和重载(overload)的区别
- 关于C#和C++的重载(Overload)、隐藏(Hide)、覆盖(Override)几个区别比较和得出的疑问
- C#中隐藏(new)和方法重写(override)和重载(overload)的区别
- C#中隐藏(new)、方法重写(override)、重载(overload)的区别
- c#中的重写(override)和重载(overload)的区别
- C#中隐藏(new)和方法重写(override)和重载(overload)的区别
- 重载(overload)与重写(override)的区别
- 重写(override)和重载(overload)的区别
- override重写和overload重载的区别
- C#中Overload和Override的区别?
- 重载(overload)、覆盖(override)、隐藏(hide)的区别
- C# 重载(overload)与重写(override)
- java重载(overload)与重写(override)的区别
- 重载(overload)和覆盖(override)有什么区别(终结篇)
- Java - 重载(Overload)和重写(Override)的区别
- 重载(overload)与覆盖(override)的区别
- 面向对象重写(override)与重载(overload)区别