ในภาษา Java อินเทอร์เฟซถูกนำไปใช้โดยคลาสเพื่อใช้วิธีการในอินเทอร์เฟซ คลาสจำเป็นต้องประกาศว่าคลาสใช้อินเทอร์เฟซตั้งแต่หนึ่งอินเทอร์เฟซขึ้นไปโดยใช้คำหลัก ที่นำไปใช้ ในการประกาศคลาส หากคุณใช้หลายอินเทอร์เฟซ ให้คั่นชื่ออินเทอร์เฟซด้วยเครื่องหมายจุลภาค
ตัวอย่างเช่น:
classAimplementsPrintable, Addable//Class A ใช้อินเทอร์เฟซสำหรับพิมพ์และ Addable classDogextendsAnimalimplementsEatable, Sleepable//Animal's Dog คลาสย่อยใช้อินเทอร์เฟซ Eatable และ Sleepable
หากคลาสที่ไม่ใช่นามธรรมใช้อินเทอร์เฟซ คลาสนั้นจะต้องแทนที่วิธีการทั้งหมดในอินเทอร์เฟซ
หมายเหตุ: เนื่องจากวิธีการในอินเทอร์เฟซจะต้องเป็นวิธี นามธรรมสาธารณะ เมื่อคลาสแทนที่วิธีอินเทอร์เฟซ มันจะต้องไม่เพียงแต่ลบตัวแก้ไขนามธรรมเท่านั้น แต่ยังต้องจัดเตรียมเนื้อหาของวิธีการด้วย และสิทธิ์การเข้าถึงของวิธีการจะต้องได้รับการแก้ไขอย่างชัดเจนด้วย สาธารณะ.
หากคลาสที่ไม่ใช่นามธรรมที่ใช้อินเทอร์เฟซใช้วิธีในอินเทอร์เฟซ มันจะเทียบเท่ากับการให้ฟังก์ชันพฤติกรรมเฉพาะของวิธีการนั้น ผู้ใช้ยังสามารถปรับแต่งอินเทอร์เฟซได้ และซอร์สไฟล์ Java สามารถประกอบด้วยคลาสและอินเทอร์เฟซได้
หากคลาสประกาศใช้อินเทอร์เฟซแต่ไม่ได้แทนที่วิธีการทั้งหมดในอินเทอร์เฟซ คลาสนั้นจะต้องเป็นคลาสนามธรรม กล่าวคือ คลาสนามธรรมสามารถแทนที่วิธีการในอินเทอร์เฟซหรือเป็นเจ้าของวิธีการในอินเทอร์เฟซโดยตรง อินเตอร์เฟซ
รายละเอียด:
โปรแกรมสามารถใช้ชื่ออินเทอร์เฟซเพื่อเข้าถึงค่าคงที่ในอินเทอร์เฟซ แต่ถ้าคลาสใช้อินเทอร์เฟซ คลาสก็จะสามารถใช้ค่าคงที่ในอินเทอร์เฟซได้โดยตรงในเนื้อหาของคลาส
เมื่อกำหนดอินเทอร์เฟซ หากคีย์เวิร์ดนำหน้าอินเทอร์เฟซสาธารณะ จะเรียกว่า อินเทอร์เฟซสาธารณะ และอินเทอร์เฟซสาธารณะสามารถนำไปใช้โดยคลาสใดก็ได้ หากไม่ได้เพิ่มคีย์เวิร์ดสาธารณะ จะเรียกว่า อินเทอร์เฟซที่เป็นมิตร และ อินเทอร์เฟซที่เป็นมิตรสามารถใช้กับคลาสนั้นได้ อินเทอร์เฟซถูกนำไปใช้โดยคลาสในแพ็คเกจเดียวกัน
หากคลาสพาเรนต์ใช้อินเทอร์เฟซ คลาสย่อยก็จะใช้อินเทอร์เฟซโดยธรรมชาติ กล่าวคือ คลาสย่อยไม่จำเป็นต้องใช้คีย์เวิร์ด Implement เพื่อประกาศการใช้งานอินเทอร์เฟซนี้อีกต่อไป
อินเทอร์เฟซยังสามารถสืบทอดได้ กล่าวคือ คุณสามารถประกาศว่าอินเทอร์เฟซเป็นอินเทอร์เฟซย่อยของอินเทอร์เฟซอื่นผ่านทางคีย์เวิร์ดขยาย เนื่องจากวิธีการและค่าคงที่ในอินเทอร์เฟซเป็นแบบทั่วไป อินเทอร์เฟซย่อยจะสืบทอดวิธีการและค่าคงที่ทั้งหมดในอินเทอร์เฟซหลัก
หมายเหตุ: อินเทอร์เฟซที่ Java จัดเตรียมไว้ทั้งหมดอยู่ใน แพ็คเกจ ที่เกี่ยวข้อง ไม่เพียงแต่สามารถแนะนำคลาสในแพ็คเกจเท่านั้น แต่ยังรวมถึงอินเทอร์เฟซในแพ็คเกจด้วย
ตัวอย่างเช่น:
importjava.io.*;//ในขณะนี้ ไม่เพียงแต่คลาสในแพ็คเกจ java.io เท่านั้นที่ถูกนำมาใช้ แต่ยังรวมถึงอินเทอร์เฟซในแพ็คเกจด้วย