【问题标题】:delegation vs inheritance python委托与继承python
【发布时间】:2011-07-12 18:04:10
【问题描述】:

我刚刚在 python 中遇到了委托,无法理解委托和继承之间的区别。为什么要使用委托而不是继承?

【问题讨论】:

标签: python delegation


【解决方案1】:

委托是一种强大的机制,您可以将任务从一个类委托给另一个类。这样做的主要优点是您的一个类中的更改不会级联到其他任何类。

此外,如果你没有得到这个原则,你的班级可能做得比他们应该做的更多。我的意思是你让一个类做一些可能最好封装到另一个类中的事情,然后你可以使用委托来做同样的事情。

【讨论】:

    【解决方案2】:

    【讨论】:

    • 适合阅读,但类型和类似乎已在 python 中统一
    • @user559611:activestate 配方对于扩展非内置类型或类的东西仍然有用,例如从 csv.reader() 调用返回的 _csv.reader 类型的对象。
    • @bua 如果你有兴趣看看我的实现github.com/symonsoft/delegation
    猜你喜欢
    • 2017-11-07
    • 2010-10-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多