1. 程式人生 > >java-方法覆蓋

java-方法覆蓋

main extend pub 就是 父類 如果 sys final ()

class Car extends Vehicle {

public static void main(String[] args){
new Car().run();

}

private final void run(){

System.out.println("car");
}

}
class Vehicle{
private final void run(){
System.out.println("vehicle");
}

}

分析:首先final聲明的方法不能被覆蓋,但是這裏並不會錯誤,

因為父類的方法是private,就是說子類不可見(雖然繼承,但是不可使用),所以子類沒有覆蓋,也就是說子類方法和父類是兩個方法,此題調用的是子類的方法。

如果將父類的方法的private改成public,就會報錯,因為final修飾的方法不能被覆蓋

java-方法覆蓋