ตัวอย่างระบบการสืบทอด ECMAScript

บทนี้ใช้ตัวอย่างประเชิญชาติเพื่ออธิบายทฤษฎีการสืบทอดของ ECMAScript

ตัวอย่างทฤษฎีสืบทอด

ที่ระบุวิธีที่ง่ายที่สุดในการอธิบายทฤษฎีการสืบทอดคือด้วยตัวอย่างประเชิญชาติ - รูปทรงเรขาคณิต ในความเป็นจริง รูปทรงเรขาคณิตมีสองชนิดเท่านั้น คือวงกลมเรียบ (Ellipse) และมุมหลายเหลี่ยม (Polygon) ที่มีจำนวนของขอบที่เหมาะสม วงกลมเป็นชนิดหนึ่งของวงกลมเรียบ มีจุดเป้าหมายเดียว สามเหลี่ยม สี่เหลี่ยมแบบ และห้าเหลี่ยมเป็นชนิดหนึ่งของมุมหลายเหลี่ยม มีจำนวนขอบที่ต่างกัน สี่เหลี่ยมช่องเป็นชนิดหนึ่งของสี่เหลี่ยมแบบ ขอบทั้งหมดมีความยาวเท่ากัน นี่เป็นความสัมพันธ์ที่สืบทอดที่สมบูรณ์

ในตัวอย่างนี้ ชั้น Shape คือชั้นพื้นฐาน (base class) ของเรียงทรง (Ellipse) และมุมหลายเหลี่ยม (Polygon) (ทุกชั้นทั้งหมดสืบทอดมาจากมัน) วงกลมมีคุณสมบัติหนึ่ง จุดเป้าหมายระบุจำนวนจุดเป้าหมายของวงกลม วงกลม (Circle) สืบทอดมาจากวงกลมเรียบ (Ellipse) ดังนั้นวงกลมเป็นย่อยชั้นของวงกลมเรียบ วงกลมเรียบเป็นชั้นหลักของวงกลม ตรงกันข้าม สามเหลี่ยม (Triangle) สี่เหลี่ยม (Rectangle) และห้าเหลี่ยม (Pentagon) ต่างก็เป็นย่อยชั้นของมุมหลายเหลี่ยม มุมหลายเหลี่ยมเป็นชั้นหลักของมุมหลายเหลี่ยม สุดท้าย สี่เหลี่ยมช่อง (Square) สืบทอดมาจากสี่เหลี่ยมแบบ

เรียบร้อยที่สุดที่จะอธิบายความสัมพันธ์ที่สืบทอดนี้คือภาพที่แสดง ซึ่งเป็นความสำคัญหนึ่งของ UML (ภาษาแนวทางที่สมบูรณ์) หนึ่งในหนึ่งคือการแสดงในทางที่เห็นได้เพื่อความสัมพันธ์แบบเช่นเดียวกับสืบทอด ภาพต่อไปนี้เป็น UML ภาพแสดงความสัมพันธ์ระหว่าง Shape และชั้นย่อยของมัน

ระบบการสืบทอด UML ตัวอย่าง

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