Java 程式設計中私有和 final 方法
在 Java 中,私有方法是具有私有訪問修飾符的方法,只能在定義類中訪問,並且由於不符合替換條件,在其子類中不可見。但是,我們可以在子類中定義一個同名方法,並在父類中訪問。
與私有方法類似,Java 中的 final 方法是具有 final 非訪問修飾符(而非 private)的方法,同樣只能在定義類中訪問,並且由於不符合替換條件,在其子類中不可見。私有方法和 final 方法之間的唯一區別在於,對於 final 方法,我們甚至無法在子類中定義一個同名方法,但對於私有方法,我們可以定義。
在 Java 中,由於私有方法和 final 方法都不允許使用替換功能,因此這兩個修飾符不能同時與同一個方法一起使用。
示例
public class PrivateFinalMethods { private void print() { System.out.println("in parent print"); } public static void main(String[] args) { PrivateFinalMethods obj = new PrivateFinalMethodsChild(); obj.print(); PrivateFinalMethodsChild obj1 = new PrivateFinalMethodsChild(); obj1.print(); } } class PrivateFinalMethodsChild extends PrivateFinalMethods { public void print(){ System.out.println("in child print method"); } }
輸出
in parent print in child print method
廣告