重写和重载的区别

重写(overwrite) 和 重载(overload)

 

重载:

  1. 发生在同一个类中
  2. 相同的方法名
  3. 参数列表不同
  4. 不看返回值,如果出现了只有返回值不同的“重载”,是错的。

 

  重写:

  1. 发生在子类与父类中
  2. 相同的方法名
  3. 相同的参数列表
  4. 返回值相同 或者 子类方法的返回值是父类方法返回值类型的子类
  5. 访问修饰符相同 或者 子类方法的修饰符范围 大于 父类
  6. 抛出的异常相同 或者 子类方法抛出的异常 小于父类

 

posted @ 2019-09-16 16:23  zbzb1  阅读(8092)  评论(0编辑  收藏  举报