จากสิ่งที่ฉันได้อ่าน: เหตุผลก็เพราะมันไม่ง่ายที่จะตัดสินว่าวิธีการใดที่จะถูกเรียกตามที่เราได้รับมรดก
อย่างไรก็ตามทำไม Java อย่างน้อยก็ไม่มีการปรับให้เหมาะสมแบบเรียกซ้ำสำหรับเมธอดแบบสแตติกและบังคับใช้วิธีที่เหมาะสมในการเรียกเมธอดแบบสแตติกกับคอมไพเลอร์?
ทำไม Java ไม่ได้รับการสนับสนุนใด ๆ เลยสำหรับการเรียกซ้ำ?
ฉันไม่แน่ใจว่ามีปัญหาใด ๆ หรือไม่
เกี่ยวกับคำแนะนำซ้ำตามที่อธิบายโดยJörg W Mittag 1 :
- อีกคำถามหนึ่งถามเกี่ยวกับ TCO คำถามนี้เกี่ยวกับ TRE TRE นั้นง่ายกว่า TCO มาก
- นอกจากนี้คำถามอื่นถามเกี่ยวกับข้อ จำกัด ที่ JVM กำหนดในการปรับใช้ภาษาที่ต้องการรวบรวม JVM คำถามนี้ถามเกี่ยวกับ Java ซึ่งเป็นภาษาหนึ่งที่ไม่ได้ถูก จำกัด โดย JVM เนื่องจาก JVM spec สามารถเปลี่ยนแปลงได้โดย คนเดียวกันที่ออกแบบ Java
- และสุดท้ายไม่มีข้อ จำกัด ใน JVM เกี่ยวกับ TRE เพราะ JVM มีวิธีการภายใน GOTO ซึ่งเป็นสิ่งที่จำเป็นสำหรับ TRE
1 เพิ่มการจัดรูปแบบเพื่อเรียกจุดที่ทำ