ต่อไปนี้คือตัวอย่างที่แสดงวิธีการใช้เมธอดส่วนตัวใน 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' ยังถูกเรียกโดยการส่งผ่านค่าเฉพาะ เอาต์พุตที่เกี่ยวข้องจะแสดงบนคอนโซล