# การใช้งาน Interface ในภาษา Java ด้วยความเข้าใจที่สมบูรณ์
การทำความเข้าใจในแนวคิดของ Interface ในภาษา Java นั้นสำคัญไม่แพ้แนวคิดอื่นๆ ของการเขียนโปรแกรมเชิงวัตถุ (OOP) เลยทีเดียว เพราะ Interface นั้นมีบทบาทสำคัญในการกำหนดรูปแบบของคลาสที่จะต้องมีการรับประกันว่าจะมี methods ที่ระบุไว้ให้บริการได้ ซึ่งทำให้การเข้าใจ Interface เป็นส่วนสำคัญในการเขียนโปรแกรมที่มีความยืดหยุ่นและง่ายต่อการบำรุงรักษา
ในบทความนี้ เราจะมีการทบทวนหลักการพื้นฐานของ Interface, ยกตัวอย่างกับ code จริงถึง 3 ตัวอย่าง, อธิบายการทำงาน, และพูดถึง Use case ในโลกแห่งความเป็นจริง เราจะมาดูกันว่า Interface ช่วยในเรื่องอะไรได้บ้างในการพัฒนาโปรแกรมในโลกของเรา พร้อมกันนี้เรายังจะชวนคุณมาเรียนรู้และพัฒนาฝีมือการเขียนโปรแกรมกับเราที่ EPT อีกด้วย
Interface ใน Java คือเค้าโครงของคลาสที่มีเพียงการประกาศ methods แต่ไม่มีการระบุรายละเอียดของคำสั่งใดๆ เราสามารถอธิบาย Interface เหมือนเป็นสัญญา (contract) ที่กำหนดว่าคลาสที่ implement มันจะต้องทำงานอย่างไร
คลาสที่ "implement" หรือประยุกต์ใช้ Interface นั้นจะต้องเขียนคำสั่งเพื่อกำหนดการทำงานเต็มรูปแบบให้กับ methods ที่ได้ประกาศไว้ใน Interface นั้นๆ
ตัวอย่างที่ 1: Interface สำหรับสัตว์ที่สามารถเคลื่อนที่ได้
ในตัวอย่างนี้, เราได้สร้าง Interface ที่ชื่อว่า `Moveable` ซึ่งมี method ที่ชื่อ `move()`. จากนั้นเราสร้างคลาส `Animal` และ `Fish` ที่ใช้งาน Interface `Moveable` โดยการระบุ `@Override` ใน methods เพื่อกำหนดการเคลื่อนที่ของแต่ละสัตว์.
ตัวอย่างที่ 2: Interface สำหรับการชาร์จไฟ
ในตัวอย่างที่สองนี้, `Chargeable` เป็น Interface ที่เอาไว้กำหนดว่าอุปกรณ์ใดๆ ที่สามารถชาร์จไฟได้จะต้องมี method `charge()`. ทั้ง `ElectricCar` และ `Smartphone` นั้น implement Interface นี้เพื่อระบุวิธีการชาร์จ.
หมายเหตุ: ข้อมูลในบทความนี้อาจจะผิด โปรดตรวจสอบความถูกต้องของบทความอีกครั้งหนึ่ง บทความนี้ไม่สามารถนำไปใช้อ้างอิงใด ๆ ได้ ทาง EPT ไม่ขอยืนยันความถูกต้อง และไม่ขอรับผิดชอบต่อความเสียหายใดที่เกิดจากบทความชุดนี้ทั้งทางทรัพย์สิน ร่างกาย หรือจิตใจของผู้อ่านและผู้เกี่ยวข้อง
Tag ที่น่าสนใจ: java c# vb.net python c c++ machine_learning web database oop cloud aws ios android
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM