【方法重载】 Overload
是值在同一个类中,多个方法的方法名相同,但是参数列表不同,即参数个数、参数类型、参数顺序(只适用于多参数不同类型的情况)不同。
- 需要留意的是方法的返回类型和修饰符并不是判断方法重载的依据。
【方法重写】 Override
是指子类对来自父类的继承方法重新编写方法体,要求方法名相同,参数列表相同。一般在重写方法的上面写上注解,以便标识:@Override 。
需要留意的是方法重写对返回类型和权限修饰有一定的要求,即:
- 子类方法返回值类型的精度要比父类方法的返回值类型更小或相等
- 子类方法的访问权限应比父类方法的访问权限更大或者相等
public class Test extends Object{
//以下三个getName()方法构成重载
public void getName() {
System.out.println("张小飞");
}
public void getName(String position) {
System.out.println("担任" + position + "职务的是:张小飞");
}
public String getName(int age) {
System.out.println("年满" + age + "岁的是:张小飞");
return "张飞";
}
//重写父类Object类的toString方法
@Override
public String toString() {
return "我是重写后的toString()";
}
}