final是最終的意思
1.final修飾類
被final修飾的類不能被繼承,所以abstract 類不能被定義成final,因爲abstract類的存在就是爲了子類去實例化,抽象類不能被實例化
2.final修飾的方法
被final修飾的方法不能被重載,所以在抽象類中,是不能把抽象方法定義爲final型
但是在抽象類中非抽象方法可以被定義爲final型
例如:
public final abstract class A{} //是不允許的
public abstract class A{
public final abstract void test(); //是不允許的
}
public abstract class A{
public final abstract void test(); //是不允許的 因爲該方法必須被子類重寫,所以不能被定義成final
public final void test2(); //是允許的 因爲在方法不必被子類重寫
}
public class A{
public final A(){// 是不允許的 構造方法是不能被final的
}
}