为什么我们需要在 Java 9 的接口中使用私有方法?

自 Java 8 版本以来,接口支持默认 方法 。有时,这些默认方法可能包含在多个方法中通用的代码。在这些情况下,我们可以编写另一个默认方法并使代码具有 可重用性。如果 公共代码是机密 的,则不建议将它们保留在默认方法中,因为实现该接口的所有类都可以访问所有默认方法。

 Java 9版本以来,接口可以具有 私有方法。这些方法仅在类/接口内部可见,因此建议对机密 代码使用私有方法。这就是在接口中添加私有方法背后的原因。

语法

private void methodName() {
   // 一些语句代码
}

示例

interface Operation {
   default void addition() {
      System.out.println("default method addition");
   }
   default void multiply() {
      division();
      System.out.println("default method multiply");
   }
   private void division() {         // private method      System.out.println("private method division");
   }
}

class PrivateMethodTest implements Operation {
   public static void main(String args[]) {
      PrivateMethodTest test = new PrivateMethodTest();
      test.multiply();
   }
}
输出结果
private method division
default method multiply