overload和override的区别

重载(overload),同一个类中可以有多个方法名相同的方法,但是这些方法的参数列表各不相同,包括

  • 参数个数
  • 类型
  • 顺序

重写(override),表示子类对父类中的某个方法重新编写,相同的内容包括方法名、参数和返回类型。子类的方法访问修饰符范围要大于等于父类中的范围,子类只能比父类抛出更少的异常。声明为final的方法不能被重写。声明为static的方法不能被重写,但是能被再次声明。

  • 子类和父类在同一包下,子类能重写除了private和final的所有方法。
  • 子类和父类不在同一包下,子类只能重写父类声明为public和protected的方法。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容