zoukankan      html  css  js  c++  java
  • override和overload的区别(C#) (转)

    越来越发觉我目前还很无知。。。区别如下:

    override表示“重写”,用于继承一个基类的时候,基类当中虚拟成员的实现。

    overload表示“重载”,用于同一类中同名方法但参数个数或类型不同的实现,也就是让方法有不同签名的版本。

    ebreezee 发表于:2007.12.02 22:05 ::分类: ( C# ) ::阅读:(184次) :: 评论 (3)
    re: override和overload的区别(C#) [回复]

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

     
    ebreezee 评论于: 2008.03.05 21:28
    re: override和overload的区别(C#) [回复]

    再次补充一下:
    override 可译作“重写”(参考《C#高级编程》)或“覆写”。和overload的主要区别是:
    override overload
    方法名 必须相同 必须相同
    参数列表 必须相同 必须不同
    返回值 必须相同 可以不同
    override用于继承类,overload用于同一个类中。

  • 相关阅读:
    asp.net 正则表达式
    字符串分隔
    用定时器实现逐渐放大层的功能
    js获取剪贴板内容
    使用无线网卡共享上网
    使用事件探查器跟踪sqlserver进程
    document.all.WebBrowser.ExecWB
    (转)JAVA与.NET DES加密解密
    web打印的实现
    关于div的定位
  • 原文地址:https://www.cnblogs.com/etata/p/1178544.html
Copyright © 2011-2022 走看看