ความแตกต่างระหว่างคลาสนามธรรมและอินเตอร์เฟส

ผู้เขียน: Laura McKinney
วันที่สร้าง: 3 เมษายน 2021
วันที่อัปเดต: 14 พฤษภาคม 2024
Anonim
Abstract Class vs Interface in C# | C# Interview Questions | Csharp Interview Questions
วิดีโอ: Abstract Class vs Interface in C# | C# Interview Questions | Csharp Interview Questions

เนื้อหา

ความแตกต่างหลัก

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


คลาสนามธรรมคืออะไร

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

อินเตอร์เฟสคืออะไร

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


ความแตกต่างที่สำคัญ

  1. คลาสนามธรรมถูกจัดวางวัตถุในขณะที่อินเทอร์เฟซจะเน้นฟังก์ชัน
  2. เมื่อคุณต้องการให้ API คงที่ในขณะนั้นให้คุณเลือกอินเตอร์เฟสมากกว่าคลาสนามธรรม
  3. สามารถรับมรดกหลายรายการได้จากการเชื่อมต่อหลายอินเตอร์เฟส ในขณะที่อยู่ในคลาส abstract คุณจะไม่สามารถรับมรดกได้หลายอย่าง
  4. หากคุณมีความรู้สึกว่าคุณในอนาคตคุณจะต้องเพิ่มวิธีการในการทำงานของคุณแล้วเลือกระดับนามธรรมไม่ได้อินเตอร์เฟซ
  5. คลาสนามธรรมให้แอ็พพลิเคชันคลาสพื้นฐานทั่วไป แต่ไม่มีสิ่งใดเกิดขึ้นในอินเตอร์เฟส
  6. ในอินเทอร์เฟซวิธีการทั้งหมดที่คุณใช้เป็นสาธารณะ แต่ในระดับนามธรรมคุณยังสามารถใช้วิธีการที่ไม่ใช่แบบสาธารณะ
  7. ตัวสร้างไม่ได้อยู่ในอินเตอร์เฟส แต่เกิดขึ้นในคลาสนามธรรม
  8. สมาชิกที่สมบูรณ์ของคลาสนามธรรมอาจเป็นแบบสแตติก แต่ไม่ใช่ส่วนต่อประสาน

อัศวินและซามูไรเป็นนักรบที่ดีมาก อัศวินถูกวางตำแหน่งในยุโรปและซามูไรอยู่ในญี่ปุ่น พวกเขาขี่ม้าทุกคนในการต่อสู้และพวกเขาต่อสู้ด้วยวิญญาณที่แท้จริงเพื่อการพิจารณาและศักดิ์ศรีของประเทศของพวกเขา ชุดเกราะร...

ความแตกต่างที่สำคัญระหว่าง Heat Rah และ Allergic Reaction คือ Heat Rah นั้นพบได้บ่อยในช่วงที่อากาศอบอุ่นซึ่งมีเหงื่อออกมากและท่อเหงื่อสามารถอุดตันได้ง่ายในขณะที่ Allergic Reaction นั้นเป็นปฏิกิริยาต่อ...

น่าสนใจ