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



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

我理解方法覆盖和多态性的概念,但我不明白的是为什么编译器(在编译期间(无法识别对象来自子类,而应该只使用该方法。

动态绑定允许相同的例程(函数、方法(作用于不同的 types.it 这对于遵守Liskov's Substitute Principal

例如

Set<Employee> fmList = getEmployees();

您可以轻松地替换getEmployees()的实现以返回特定类型的 Set。

https://en.wikipedia.org/wiki/SOLID

如何考虑子类型的多态性

相关内容

  • 没有找到相关文章

最新更新