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

更新于: 2020 年 6 月 27 日

7K+ 次浏览

开启你的 职业生涯

完成课程,获得认证

开始
广告