Computer >> Máy Tính >  >> Lập trình >> Java

Chúng ta có thể có một phương thức riêng hoặc phương thức tĩnh riêng trong một giao diện trong Java 9 không?


Có, chúng tôi có thể có riêng tư phương pháp hoặc phương thức tĩnh riêng tư trong một giao diện trong Java 9. Chúng ta có thể sử dụng các phương pháp này để loại bỏ phần dư thừa của mã. Riêng tư phương pháp có thể hữu ích hoặc chỉ có thể truy cập trong giao diện đó. Chúng tôi không thể truy cập hoặc kế thừa các phương thức riêng tư từ giao diện này sang giao diện hoặc lớp khác.

Cú pháp

interface <interface-name> {
   private static void methodName() {
      // some statements
   }
   private void methodName() {
      // some statements
   }
}

Ví dụ

interface Java9Interface {
   public abstract void method1();
   public default void method2() {
      method4();
      method5();
      System.out.println("Inside default method");
   }
   public static void method3() {
      method5();    //  static method inside other static method
      System.out.println("Inside static method");
   }
   private void method4() {    // private method
      System.out.println("Inside private method");
   }
   private static void method5() {    // private static method
      System.out.println("Inside private static method");
   }
}
public class PrivateStaticMethodTest implements Java9Interface {
   @Override
   public void method1() {
       System.out.println("Inside abstract method");
   }
   public static void main(String args[]) {
      Java9Interface instance = new PrivateStaticMethodTest();
      instance.method1();
      instance.method2();
      Java9Interface.method3();
   }
}

Đầu ra

Inside abstract method
Inside private method
Inside private static method
Inside default method
Inside private static method
Inside static method