返回介绍

第 12 章 继承的优缺点

发布于 2024-02-05 21:59:47 字数 734 浏览 0 评论 0 收藏 0

(我们)推出继承的初衷是让新手顺利使用只有专家才能设计出来的框架。1

——Alan Kay
“The Early History of Smalltalk”

1Alan Kay,“The Early History of Smalltalk,”in SIGPLAN Not. 28, 3 (March 1993), 69-95. 网上也有这篇文章。感谢我的朋友 Christiano Anderson 在我写这一章时告诉我这篇参考文献。

本章探讨继承和子类化,重点是说明对 Python 而言尤为重要的两个细节:

子类化内置类型的缺点

多重继承和方法解析顺序

很多人觉得多重继承得不偿失。不支持多重继承的 Java 显然没有什么损失,C++ 对多重继承的滥用伤害了很多人,这可能还坚定了使用 Java 的决心。

然而,Java 的巨大成功和广泛影响,也导致很多刚接触 Python 的程序员没怎么见过真实的代码使用多重继承。鉴于此,我们将不再举简单的示例,而是通过两个重要的 Python 项目探讨多重继承,这两个项目是 GUI 工具包 Tkinter 和 Web 框架 Django。

我们将首先分析子类化内置类型的问题。本章余下的内容则探讨多重继承,我们将分析案例,并讨论构建类层次结构方面好的做法和不好的做法。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文