Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么我们需要动态绑定(Java)?_Java_Dynamic Binding - Fatal编程技术网

为什么我们需要动态绑定(Java)?

为什么我们需要动态绑定(Java)?,java,dynamic-binding,Java,Dynamic Binding,我读过很多关于Java中静态绑定和动态绑定之间区别的文章,但没有一篇真正谈到我们为什么需要动态绑定。为什么有些代码只能在运行时绑定?为什么不能在编译时绑定所有代码 我理解方法重写和多态性的概念,但我不理解的是,为什么编译器在编译时无法识别对象来自子类,而应该只使用该方法。动态绑定允许相同的例程函数,方法对不同类型进行操作。必须遵守Liskov的替代原则 e、 g 您可以轻松地替换etemployees的实现以返回特定类型的集合 在OSGi这样的动态系统中,您不知道在运行时哪个API实现可用。另一

我读过很多关于Java中静态绑定和动态绑定之间区别的文章,但没有一篇真正谈到我们为什么需要动态绑定。为什么有些代码只能在运行时绑定?为什么不能在编译时绑定所有代码


我理解方法重写和多态性的概念,但我不理解的是,为什么编译器在编译时无法识别对象来自子类,而应该只使用该方法。

动态绑定允许相同的例程函数,方法对不同类型进行操作。必须遵守Liskov的替代原则

e、 g

您可以轻松地替换etemployees的实现以返回特定类型的集合


在OSGi这样的动态系统中,您不知道在运行时哪个API实现可用。另一个例子是插件系统。
Set<Employee> fmList = getEmployees();