我在大学里参加了面向对象编程的考试。其中一个问题是关于静态绑定和动态绑定。
问题如下:
Shape s; if(i==1) s = new Point(1,2); else s = new Rectange(10,20); //this is dynamic binding.
我的老师说答案是“不”,因为它是静态绑定。
据我所知,静态绑定和动态绑定仅在我调用方法时发生。我阅读了有关此主题的所有 StackOverflow 问题和许多博客文章,我能想到的唯一答案是存在动态绑定。
任何解释将不胜感激。