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