คำถามติดแท็ก static-binding

9
คงเทียบกับ การผูกแบบไดนามิกใน Java
ฉันกำลังทำการบ้านสำหรับหนึ่งในชั้นเรียนของฉันและในนั้นฉันต้องให้ตัวอย่างการใช้ไวยากรณ์ Java ของแบบคงที่และแบบไดนามิกที่มีผลผูกพัน ฉันเข้าใจแนวคิดพื้นฐานว่าการผูกแบบคงที่เกิดขึ้นในเวลาคอมไพล์และการเชื่อมโยงแบบไดนามิกเกิดขึ้นที่รันไทม์ แต่ฉันไม่สามารถเข้าใจได้ว่ามันทำงานอย่างไรโดยเฉพาะ ฉันพบตัวอย่างของการผูกแบบคงที่ทางออนไลน์ที่ให้ตัวอย่างนี้: public static void callEat(Animal animal) { System.out.println("Animal is eating"); } public static void callEat(Dog dog) { System.out.println("Dog is eating"); } public static void main(String args[]) { Animal a = new Dog(); callEat(a); } และสิ่งนี้จะพิมพ์ว่า "สัตว์กำลังกิน" เนื่องจากการเรียกcallEatใช้การผูกแบบคงที่แต่ฉันไม่แน่ใจว่าเหตุใดจึงถือว่าเป็นการผูกแบบคงที่ จนถึงขณะนี้ไม่มีแหล่งข้อมูลใดที่ฉันเคยเห็นที่สามารถอธิบายสิ่งนี้ได้ในแบบที่ฉันสามารถทำตามได้
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.