zoukankan      html  css  js  c++  java
  • 重载和重写

    重载和重写的区别

    重载:

      是发生在同一类中,

      方法名称必须相同,

      方法参数必须不同(参数个数不同,参数类型不同,参数顺序不同),

      与返回类型无关,

      访问修饰符无关,

      可以抛出异常

    重写:

      发生在有继承关系的子类中,

      方法声明相同,

        方法名称相同,

        参数列表相同,

        返回类型相同,

        访问修饰符不能更小,

        不可抛出更多异常,但可抛出非编译异常(如运行时异常RuntimeException)。

      

      当父类访问修饰符为private时,即使子类有同名的方法,也不能重写。

      非静态方法不能被重写成静态方法。

      静态方法,不能被重写。

      父类的静态方法不能被重写,重写只适用于实例方法,不能用于静态方法,

      静态方法可以隐藏,不能@Override和@Overload

      

      静态方法只与类有关,static方法不是后期绑定,在编译期就绑定了。

      静态方法不会进行多态判断,只与声明的类有关。

      

  • 相关阅读:
    [摘]MongoDB范围查询的索引优化
    python ftp 暴破
    写mongodb日志
    [转]使用 Python 实现跨平台的安装程序
    HDOJ 1008 Elevator
    第一个数字
    反转串
    HDOJ 1108 最小公倍数
    HDOJ 1096 A+B for InputOutput Practice (VIII)
    报数游戏
  • 原文地址:https://www.cnblogs.com/tongs/p/7435151.html
Copyright © 2011-2022 走看看