Java中的override是java多态的一种体现,当调用具体的方法时,会根据具体的当前的对象(父类对象或者子类对象),来确定执行的具体方法。示例如下:
Super.java
public class Super {
public Super() {
System.out.println("super的构造方法");
this.overrideMe();//构造父类时,调用父类的;调用子类时,调用子类的
overrideMe();//两者效果是一样的
}
public void overrideMe() {
System.out.println("super");
}
}
Sub.java
public class Sub extends Super {
public Sub(){
System.out.println("Sub的构造方法");
overrideMe();//会调用子类的方法
super.overrideMe();//会调用父类的方法
}
@Override
public void overrideMe(){
System.out.println("Sub");
}
}
如下语句调用:
Super sub = new Sub();
输出结果如下: