方法的重写(覆盖)
要求:方法的名称一致
方法的重写
(
覆盖
)
一定发生在父子类之间
public class T05 {
public static void main(String[] args) {
F4 f = new F4();
f.pp(10);
S4 s = new S4();
s.pp(10);
F4 fs = new S4();
fs.pp(10);
}
}
class F4 {
public void pp(int k) {
System.out.println("F4.pp(int)");
}
}
class S4 extends F4 {
public void pp(int k) {//子类中定义的同名同参数的方法覆盖了父类中的方法定义,如 果需要调用父类中的方法则需要使用super.pp(k)进行调用
System.out.println("S4.pp(int)");
}
}
- 执行规则:new谁运行谁的方法,和声明的类型无关
- 方法的覆盖定义要求方法名称一致
@Override注解可以使IDE工具在编译源代码时进行检查,如果有手写错误则