51 方法重写需要注意的地方
权限修饰符需要注意的地方
派生类重写超类中的方法的权限修饰符,只能比超类的该方法的权限修饰符大或一样大。
权限修饰符的大小顺序:public default protected private
如超类中某方法的权限修饰符为:protected
则它的派生类重写此方法时可以使用:protected default public
返回值需要注意的地方
子类重写父类方法时,如父类中的方法返回值是void和基础数据类型,则子类重写时必须相同。
当重写的方法在父类中返回的是引用类型时,子类重写的该方法,返回的引用类型,只能小于等于该引用类型。小于等于指继承关系。
如:
class A{
public B getB() {
return null;
}
public A getA() {
return null;
}
}
class B extends A{
public A getB() {//父类中此方法返回B类型,重写后试图返回A类型,编译报错
return null;
}
public B getA() {//父类中此方法返回A类型,重写后返回比A类型小的B类型不报错
return null;
}
}

浙公网安备 33010602011771号