Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Java

กฎสำหรับเมธอดส่วนตัวในอินเทอร์เฟซใน Java 9 คืออะไร


Java 9 เพิ่มคุณลักษณะใหม่ของ ส่วนตัว วิธีการ ไปยัง อินเทอร์เฟซ . วิธีการส่วนตัวสามารถกำหนดได้โดยใช้ ส่วนตัว ตัวแก้ไข เราเพิ่มได้ทั้ง ส่วนตัว และ ส่วนตัว คงที่ วิธีการ ในอินเทอร์เฟซจาก Java 9 เป็นต้นไป

กฎสำหรับเมธอดส่วนตัวในอินเทอร์เฟซ:

  • เมธอดส่วนตัวมีเนื้อหาในอินเทอร์เฟซ หมายความว่าเราไม่สามารถประกาศให้เป็นวิธีนามธรรมปกติเหมือนที่ทำในอินเทอร์เฟซได้ตามปกติ หากเรากำลังพยายามประกาศวิธีการส่วนตัวโดยไม่มีเนื้อหา ก็อาจมีข้อผิดพลาดแจ้งว่า "วิธีนี้ต้องใช้เนื้อความแทนที่จะเป็นเครื่องหมายอัฒภาค ".
  • ไม่สามารถใช้ทั้ง ส่วนตัว และ นามธรรม ตัวแก้ไขร่วมกันในอินเทอร์เฟซ
  • หากเราต้องการเข้าถึงเมธอดส่วนตัวจากเมธอดแบบสแตติกในอินเทอร์เฟซ เมธอดนั้นก็สามารถประกาศเป็น เมธอดไพรเวตสแตติก เนื่องจากเราไม่สามารถอ้างอิงแบบคงที่กับ ไม่คงที่ วิธีการ
  • A วิธีการแบบคงที่ส่วนตัว ใช้จาก ไม่คงที่ บริบทหมายความว่าสามารถเรียกใช้จาก วิธีการเริ่มต้น ในอินเทอร์เฟซ

ไวยากรณ์

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

ตัวอย่าง

interface TestInterface {
   default void methodOne() {
      System.out.println("This is a Default method One...");
      printValues(); // calling a private method
   }
   default void methodTwo() {
      System.out.println("This is a Default method Two...");
      printValues(); // calling private method...
   }
   private void printValues() { // private method in an interface
      System.out.println("methodOne() called");
      System.out.println("methodTwo() called");
   }
}
public class PrivateMethodInterfaceTest implements TestInterface {
   public static void main(String[] args) {
      TestInterface instance = new PrivateMethodInterfaceTest();
      instance.methodOne();
      instance.methodTwo();
   }
}

ผลลัพธ์

This is a Default method One...
methodOne() called
methodTwo() called
This is a Default method Two...
methodOne() called
methodTwo() called