java:继承

标签 java oop inheritance

继承的替代方案有哪些?

最佳答案

Effective Java:优先考虑组合而不是继承。 (这实际上也来自《四人帮》)。

他提出的情况是,如果扩展类没有明确设计为继承,继承可能会导致许多不恰当的副作用。例如,对 super.someMethod() 的任何调用都可能导致您进入未知代码的意外路径。

相反,保留对您原本要扩展的类的引用,并委托(delegate)给它。

这里是 interview 的链接与 Erich Gamma 讨论了这个概念。

关于java:继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2135669/

相关文章:

c++ - 为什么 C++ 不让基类实现派生类的继承接口(interface)?

java - 是否可以使用 apache tomcat 在客户端的应用程序中使用部署在 glassfish 中的 Web 服务?

java - JFrame 在 thread.sleep() 之前未更新

Java : how to determine disk space on Windows system prior to 1. 6

PHP OO - 我应该如何处理多个类中的软错误?

python - 面向对象编程Python : Where to instantiate Cassandra and elasticsearch cluster?

php - 为什么 PHP 代码在 HTML 之前执行?

visual-studio-2010 - 从自定义基类继承 T4 模板,提供未安装 Visual Studio 2010 SDK

c++ - 如何根据容器中对象的类型来判断调用哪个函数?

java - 可以播放嵌入媒体的开源 Java PDF 查看器