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

ทำไมจึงมีการนำอินเทอร์เฟซมาใช้ใน Java

  • อินเทอร์เฟซเป็นสัญญาของสิ่งที่คลาสสามารถทำได้
  • เมื่อคลาสนำอินเทอร์เฟซมาใช้งาน มันสามารถนำการนำไปใช้งานจริงให้กับเมธอด abstract ทั้งหมดที่ประกาศในอินเทอร์เฟซ อินเทอร์เฟซกำหนดชุดพฤติกรรมร่วมกัน คลาสที่นำอินเทอร์เฟซมาใช้งานยอมรับพฤติกรรมเหล่านี้และให้การนำไปใช้งานของตัวเอง
  • การใช้งานหลักของอินเทอร์เฟซหนึ่งคือการให้สัญญาการสื่อสารระหว่างสองออบเจ็กต์
  • หากเรารู้ว่าคลาสนำอินเทอร์เฟซมาใช้งาน แล้วเราจะรู้ว่าคลาสนั้นประกอบด้วยการนำไปใช้งานจริงของเมธอดที่ประกาศในอินเทอร์เฟซนั้น และเรามั่นใจได้ว่าสามารถเรียกใช้เมธอดเหล่านี้ได้อย่างปลอดภัย กล่าวอีกนัยหนึ่ง สองออบเจ็กต์สามารถสื่อสารกันได้ตามสัญญาที่กำหนดในอินเทอร์เฟซ แทนที่จะเป็นการนำไปใช้งานเฉพาะของพวกมัน
  • Java ไม่รองรับการสืบทอดหลายคลาส (multiple inheritance) การสืบทอดหลายคลาสอนุญาตให้เราสร้างคลาสย่อยจากคลาสแม่มากกว่าหนึ่งคลาส สิ่งนี้ก่อให้เกิดปัญหาหากสองคลาสแม่โดยตรงมีการนำไปใช้งานที่ขัดแย้งกัน Java แก้ปัญหานี้โดยอนุญาตให้เรา implements อินเทอร์เฟซได้มากกว่าหนึ่งอินเทอร์เฟซ
  • เนื่องจากอินเทอร์เฟซประกอบด้วยเมธอด abstract เท่านั้นโดยไม่มีการนำไปใช้งานจริง ไม่มีความขัดแย้งเกิดขึ้นระหว่างอินเทอร์เฟซหลายตัว