重写(override)
- 在子类中修改继承父类的方法
- 在子类中定义一个与父类型具有相同“方法签名”的方法。
- 能够继承的方法才能重写!(在子类中不能继承,不可见的方法,不能重写)
- 即两同、两小、一大:
a) 两同:两个方法名、参数相同。
b) 两小:引用类型的返回值、子类方法的返回值小于等于父类方法的返回值;基本类型:子类方法返回值等于父类方法返回值;子类方法抛出的异常需要小于等于父类抛出的异常。
c) 一大:子类方法的访问控制范围需要大于等于父类方法。…
public class Human {
public void sayAge(int age){
System.out.println("我已经"+age+"岁了。");
}
}
class Man extends Human{
@Override
public void sayAge(int age) {
System.out.println("我才"+age+"岁了。");
}
重载(overload)
- 在类中(包含父类)定义的方法名一样参数不同的方法。
- 一般这些方法封装的算法都不相同。
- 只是为了便是设计的优雅而将方法名定义为一样。
class Arithmetic {
public int add(int number1, int number2) {
return number1 + number2;
}
public double add(double number1, double number2) {
return number1 + number2;
}
}