重载:
重载是指在同一个类中,允许定义多个同名方法,只要它们的参数列表不同即可。参数列表不同可以是参数的类型不同、参数的数量不同,或者两者都不同。
- 重载方法的返回类型可以相同也可以不同。
例子:
class Example {
void display(int i) {
System.out.println("Printing int: " + i);
}
void display(double f) {
System.out.println("Printing double: " + f);
}
void display(String s) {
System.out.println("Printing String: " + s);
}
}
重写:
- 重写是指在子类中重新定义父类的方法。子类和父类中的方法名相同,参数列表也相同,返回类型也相同。
- 重写的方法不能比父类方法的访问权限更严格,且不能抛出新的检查异常或比被重写方法声明的更广泛的异常。
- 例子:
-
class Animal { void makeSound() { System.out.println("Some sound"); } } class Dog extends Animal { @Override void makeSound() { System.out.println("Bark"); } }