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

เมธอดส่วนตัวใน Java 9 Interfaces


ต่อไปนี้คือตัวอย่างที่แสดงวิธีการใช้เมธอดส่วนตัวใน Java 9 Interfaces -

ตัวอย่าง

interface my_int{
   public abstract void multiply_vals(int a, int b);
   public default void add_vals(int a, int b){
      sub_vals(a, b);
      System.out.print("Default method result ");
      System.out.println(a + b);
   }
   private void sub_vals(int a, int b){
      System.out.print("Private method result ");
      System.out.println(a - b);
   }
   private static void div(int a, int b){
      System.out.print(" Private static method result ");
      System.out.println(a / b);
   }
}
public class my_new_int implements my_int{
   @Override
   public void multiply_vals(int a, int b){
      System.out.print("Abstract method result ");
      System.out.println(a * b);
   }
   public static void main(String[] args){
      my_int in = new my_new_int();
      in.multiply_vals(11, 34);
      in.add_vals(78, 0);
   }
}

ผลลัพธ์

Abstract method result 374
Private method result 78
Default method result 78

มีการกำหนดอินเทอร์เฟซชื่อ 'my_int' ซึ่งมีฟังก์ชันนามธรรมโดยไม่มีเนื้อหา มีการกำหนดฟังก์ชันอื่นเริ่มต้นซึ่งโดยทั่วไปจะเพิ่มตัวเลขสองตัว มีการกำหนดฟังก์ชันอื่นชื่อ 'sub_vals' ซึ่งจะลบตัวเลขทั้งสองออก

ฟังก์ชันสแตติกอื่นที่ชื่อว่า div ถูกกำหนดให้แบ่งสองค่า คลาสชื่อ 'my_new_int' ใช้อินเทอร์เฟซที่กำหนดไว้ก่อนหน้านี้ มันแทนที่ฟังก์ชันที่คูณค่าและกำหนดมันใหม่ ในฟังก์ชันหลัก อินสแตนซ์ของอินเทอร์เฟซจะถูกสร้างขึ้น และฟังก์ชัน 'multiply_vals' จะถูกเรียกโดยการส่งผ่านค่าเฉพาะ ในทำนองเดียวกัน ฟังก์ชัน 'add_vals' ยังถูกเรียกโดยการส่งผ่านค่าเฉพาะ เอาต์พุตที่เกี่ยวข้องจะแสดงบนคอนโซล