父类的一个方法g调用了父类另一个的protected/public 方法f,当子类继承父类并且重写了父类被调用的protected/public 方法f后, 子类调用g方法,g方法块中将调用子类重写的方法f。
public class Test {
public static void main(String[] args) {
new Child().g();
}
}
class Parent{
protected String f(){
return "I'm f() function that age 48";
}
public void g(){
System.out.println("Here's the message from Parent "+ f());
}
}
class Child extends Parent{
@Override protected String f(){
return "I'm f() function aged 12";
}
}