เห็นว่ามันคือการสร้างclassใหม่ที่ไม่ทับของเดิม แบบทำงานต่อจากเดิม
แต่วิธีเขียน แล้วตั้งชื่อนี่ มีหลักการยังไงครับ?
มันไม่ใช่การสร้าง class ใหม่ครับมันแค่สร้าง method หรือตัวแปร global ใหม่
โดยปกติแล้วมักใช้เวลาที่ต้องเขียน method นั้นซ้ำๆทับลงไป
ส่วนหลักการเขียนก็ตามนี้ครับ
Code:
alias newmethod oldmethod
ลองหาตัวอย่างมาศึกษาดูนะครับ
ถ้าอยากทำอย่างว่า ก็จะมีหน้าตาประมาณนี้
Code:
class A << B
def update
super #เป็นส่วนที่นำของเก่ามาใช้
end
end
เป็นการโคลน method ขึ้นมา แล้วเขียน method ใหม่ทับ method เดิม แล้วทีนี้เวลาจะเรียกใช้ method เดิม ก็ เรียกจาก method ที่โคลนเอาไว้ มั้งนะ ผมมั่วเอา