« (转)深入解析C#编程中的方法重载(转自MSDN)可访问性级别 »

override 与 overload (转)

override译作覆盖,用于继承一个基类时,对基类的非虚方法的重新实现,如果是虚方法,则是多态。两者完全不同。
对于使用基类型指针或是引用来调用方法,如果是覆盖,其调用关系在编译期间就已经确定,而对于多态,则是后期联编,在运行时根据动态类型来确定

overload表示“重载”,用于同一类中同名方法但参数个数或类型不同的实现

 items                override                                  overload
位置           存在于继承关系的类中     存在于同一类中
方法名               相同                                     相同
参数列表           相同                                 必须不同
返回值               相同                                可以不相同
 

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。