Overload和Override:方法的重写override和重载overload是Java多态的不同表现。
重写override是父类和子类之间多态性的一种表现,overload是一个类中多态性的一种表现。
Overload:重载表示一个类中可以存在多个名称相同的方法,但这些相同名称方法的参数列表不同(参数类型不同、参数数量不同等)。overload可以改变返回值类型。
Override:重写表示子类出现了和父类相同名称的方法时会覆盖父类的方法。
override(重写)
1、方法名、参数、返回值相同。
2、子类方法不能缩小父类方法的访问权限。
3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。
4、存在于父类和子类之间。
5、方法被定义为final不能被重写。
overload(重载)
1、参数类型、个数、顺序至少有一个不相同。
2、不能重载只有返回值不同的方法名。
3、存在于父类和子类、同类中。