อินเทอร์เฟซใน Java คืออะไร? คู่มือเริ่มต้นสำหรับอินเทอร์เฟซ Java วิธีการใช้งาน? ตัวอย่างที่แนบมา

เผยแพร่แล้ว: 2020-10-31
อินเทอร์เฟซใน Java คืออะไร? คู่มือสำหรับผู้เริ่มต้นใช้งานอินเทอร์เฟซ Java

ทำไมและเมื่อใดจึงควรใช้อินเทอร์เฟซ

  • อินเทอร์เฟซเป็นประเภทอ้างอิงใน Java
  • มันคล้ายกับชั้นเรียน
  • เป็นการรวบรวมวิธีการเชิงนามธรรม
  • ใช้เพื่อให้บรรลุนามธรรมทั้งหมด

ฉันเชื่อว่านี่เป็นคำถามแรกที่คุณคาดหวังใน Java Interview คำถามพื้นๆ แต่ใช้กันอย่างแพร่หลายในการสัมภาษณ์

ไม่มีคำตอบที่สมบูรณ์แบบสำหรับเรื่องนี้ และมีหลายวิธีในการตอบคำถามนี้ อาจเป็นผู้สัมภาษณ์ของคุณที่กำลังมองหาแนวทางปฏิบัติสำหรับคำถามนี้หรือไม่? เป็นไปได้.

มาเริ่มกันที่คำจำกัดความพื้นฐานของ Java Interface

เราจะพูดถึงเรื่องเดียวกันด้วยตัวอย่างหลายตัวอย่าง

  • อินเทอร์เฟซใน Java คืออะไร?
  • อินเทอร์เฟซใน java พร้อมตัวอย่างเรียลไทม์คืออะไร?
  • เหตุใดจึงต้องใช้อินเทอร์เฟซใน java
  • การออกแบบส่วนต่อประสาน Java
  • คำถามสัมภาษณ์ที่พบบ่อยที่สุดใน Interface

พื้นฐานของอินเทอร์เฟซ:

Java Interface คืออะไร - ตัวอย่างที่แนบมา
  1. interface เป็นเพียงสัญญา คำอธิบายเกี่ยวกับพฤติกรรมที่คลาสการนำไปใช้งานจะมี คลาสการดำเนินการทำให้แน่ใจว่าจะมีวิธีการเหล่านี้ที่สามารถใช้ได้ โดยพื้นฐานแล้วมันเป็นสัญญาหรือสัญญาที่ชั้นเรียนต้องทำ
  2. จะเกิดอะไรขึ้นถ้าในโปรเจ็กต์ของคุณ การใช้งานต่างๆ ทั้งหมดใช้ลายเซ็นเมธอดเดียวกัน อินเทอร์เฟซทำงานได้ดีที่สุดในกรณีนั้น
  3. ในระยะหลังหลังจากดำเนินโครงการหลักแล้ว มาดูกันว่าคุณได้ใช้ข้อกำหนดอินเทอร์เฟซเป็น ~50 แห่งแล้วจะเกิดอะไรขึ้นถ้าคุณเปลี่ยนอินเทอร์เฟซ คุณต้องทำการปรับเปลี่ยนทั้ง 50 แห่งในโครงการของคุณ
  4. ขอแนะนำให้ใช้เวลามากขึ้นในการกำหนดอินเทอร์เฟซระหว่างขั้นตอนการออกแบบ แทนที่จะเปลี่ยนในขั้นตอนภายหลัง
  5. อินเทอร์เฟซประกอบด้วยตัวแปร singleton ( public static final ) และวิธี public abstract ปกติเราชอบอินเทอร์เฟซแบบเรียลไทม์มากกว่าเมื่อเรารู้ว่าต้องทำอะไรแต่ไม่รู้ว่าต้องทำอย่างไร อินเทอร์เฟซไม่สามารถมีฟิลด์อินสแตนซ์
  6. คลาสที่ใช้อินเทอร์เฟซต้องมีข้อกำหนดของเมธอดสำหรับเมธอดทั้งหมดที่มีอยู่
  7. คลาสอาจใช้อินเทอร์เฟซหลายแบบ
  8. การใช้งานส่วนต่อประสานอาจถูกเพิ่มในคลาสบุคคลที่สามที่มีอยู่
  9. อินเทอร์เฟซสามารถมีได้หลายวิธี
  10. ใน Java คุณไม่สามารถสร้างอินสแตนซ์อินเทอร์เฟซได้
  11. อินเทอร์เฟซไม่มีตัวสร้างใด ๆ
  12. อินเตอร์เฟสไม่ได้ถูกขยายโดยคลาส มันถูกนำไปใช้โดยชั้นเรียน
  13. อินเทอร์เฟซสามารถขยายได้หลายอินเทอร์เฟซ

ตัวอย่างอินเทอร์เฟซ:

เคล็ดลับที่ 1

สร้างอินเทอร์เฟซ CrunchifyDatabaseInterface.java

เคล็ดลับที่ 2

ใช้อินเทอร์เฟซ CrunchifyDatabaseOracleImpl.java

เมื่อคุณใช้อินเทอร์เฟซครั้งแรก Eclipse จะแสดงให้คุณเห็นว่าเพิ่มวิธีการที่ยังไม่ได้ใช้งาน

Java Interface - เพิ่มวิธีการที่ยังไม่ได้ใช้งาน

เพียงคลิกที่ " Add unimplemented methods ที่ไม่ได้ใช้งาน" และคลาส IMPL ของคุณควรพร้อมด้วย Auto-generated method stub อัตโนมัติ

เคล็ดลับ 3 วิธีการ Impl จริง

เคล็ดลับที่ 4

ในทำนองเดียวกันคุณสามารถใช้อินเทอร์เฟซเดียวกันเพื่อใช้การดำเนินการเฉพาะของฐานข้อมูลที่แตกต่างกัน เช่นเดียวกับ DB2, MySQL, MongoDB, Cassandra DB เป็นต้น

อะไรต่อไป?

อยู่ระหว่างการเขียน Tutorial on Abstract Class และบทช่วยสอนอื่นที่แสดงความแตกต่างระหว่าง Abstract Class และ Interface อย่างชัดเจน