multiple-inheritance - 关于致命钻石问题(多重继承)的问题
问题描述
我知道在stackoverflow中已经有很多人问过致命的钻石问题,但是他们问的问题不是我想问的,所以当我遇到这种问题时,谁能告诉我解决方案是什么。
下图(A)是典型的菱形问题,(B)是将音乐家和演员从类更改为接口以实现多重继承的解决方案。但是我想问的是,如果我也需要音乐家和演员班呢?一般来说,并非所有人都是音乐家和演员,有些人只是音乐家,有些人只是演员,如果我将这两个类更改为接口,这是否意味着如果我需要音乐家,我也使用 Performer 类来创建对象?如果是这样,我为什么要创建音乐家和演员界面?即使考虑未来的继承问题,如(C)所示,我不认为接口可以帮助任何代码可重用,唯一可以帮助的就是限制人它必须服从音乐家接口有什么。这两个问题我真的很困惑,谁能详细告诉我?非常感谢您的帮助。
解决方案
推荐阅读
- reactjs - React map 函数创建
带有错误的参数 - salesforce - jsforce查询方法链查找2个日期之间的数据
- react-native - 无法从反应原生的子类堆栈导航器更新父类状态
- web2py - 在 Web2py 中,用户登录后如何重定向到另一个页面?
- javascript - 如何在nodejs中验证java生成的密码哈希(sha-256)?
- python - 通过相交将集合列表减少到最小
- cython - 用 cython 包装一个复杂类的 std::vector 类
- .htaccess - 银条 htaccess
- reactjs - 使 onHover 只影响 reactjs 中的一个元素
- algorithm - 快速查找的实现