1

我对这些面向对象编程的概念感到困惑。两者都是在运行时完成的,但我无法区分两者。

4

1 回答 1

1

动态绑定和动态加载确实处于开发人员所需的一组 Java 概念的边缘,如果不是在外面的话,因为 Java 通常试图让你免于这些事情。

动态绑定是按名称进行的运行时查找。例如,一个类文件可以调用System.currentTimeMillis()不同类文件中的指令。类 ( java.lang.System) 是动态加载的(稍后讨论),并且在运行时通过名称在该类中查找该方法(尽管查找可以被记忆或缓存)。

动态加载略有不同。它是在需要时加载代码或方法(即在第一次需要之前不加载类文件。System这不是一个很好的例子,因为它可能在早期由 JVM 加载,尽管TreeMap可以作为一个很好的例子。然后可以发生动态绑定.

于 2013-10-12T17:06:08.760 回答