Polymorphism in OOP Programming

English 简体中文 繁体中文 ภาษาไทย Tiếng Việt
Summary

Polymorphism, a core OOP principle, enables an action or method to behave differently depending on the object it operates on. It manifests in three primary forms: overloading, overriding, and dynamic method binding. Overloading involves methods sharing a name but differing in parameter count or types, allowing context-specific behavior. Overriding occurs when a subclass redefines a method with an identical signature, ensuring the subclass's implementation is used. Dynamic method binding further extends this by resolving method calls to the correct subclass implementation at runtime, even when referenced through a parent type.

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

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

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

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

JAVA OOP POLYMORPHISM OVERLOADING OVERRI

  RELATED

  COMMENTS

0

No comment for this article.