关于Python的重复继承,请高手解惑!
ringa_lee
ringa_lee 2017-04-17 17:37:44
[Python讨论组]

如下两个类的声明:
class GameLogicInterface(Actor, SocketWrapperMixin, TimerMixin, protocol.Protocol):

class GameLogic(GameLogicInterface, TimerMixin, CardTypeMixin, protocol.Protocol):

很明显GameLogic有重复继承,为什么不直接写class GameLogic(GameLogicInterface):?

我知道现在Python的MRO是广度优先,但这样的重复继承没什么问题吗? 不会造成存储浪费吗?

ringa_lee
ringa_lee

ringa_lee

全部回复(2)
高洛峰

看不出有什么问题。多用个几 k 数据不算什么事吧?

PHPz

我觉得出现这样的代码,应该是有历史原因的,比如最开始,GameLogicInterface可能并没有从TimerMixinprotocol.Protocol继承,所以它的子类GameLogic需要自行继承这两个类。但从某个时候开始,GameLogicInterface中加入了那两个父类,但又不能(或者不愿意)修改所有子类,所以就出现了你看到的中情况。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号