重载:多个同名方法,根据不同传参,实现不同的逻辑。
- 发生在同一个类中
- 发生在编译期
- 方法名必须相同,参数列表必须不同(个数不同,类型不同,顺序不同)
- 访问修饰符和返回值类型可以不同
- 构造方法可以被重载
重写(覆盖):子类对父类的方法的重新编写,实现不同的逻辑。
- 发生在子类中
- 发生在运行期
- 方法名和参数列表必须和父类方法一致
- 返回值类型必须相同,抛出的异常范围小于等于父类,访问修饰符范围大于等于父类
- 构造方法不能被重写
- 用final/static/private修饰的方法不能被重写
重载:多个同名方法,根据不同传参,实现不同的逻辑。
重写(覆盖):子类对父类的方法的重新编写,实现不同的逻辑。