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
广告