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