Python 类继承是面向对象编程中的一个核心概念,它允许我们创建新的类,这些新类(子类或派生类)可以扩展或修改已存在的类(父类或基类)的功能。这种机制使得代码复用变得更为高效,同时也能保持代码结构的清晰。 在 Python 中,每个类都默认继承自内置的 `object` 类。即使不明确指定,Python 也会自动将你的类关联到 `object`。在 Python 2 中,显式地写上 `(object)` 是推荐的实践,但在 Python 3 中,这已经不再是必需的,因为所有类都默认继承 `object`。 下面是一个简单的类继承示例: ```python class Class1(object): k = 7 def __init__(self, color='green'): self.color = color def Hello1(self): print("Hello from Class1!") def printColor(self): print("I like the color", self.color) def __localHello(self): print("A hardy Hello only used within the class!") ``` 在上面的 `Class1` 中,`__init__` 方法是构造函数,用于初始化新创建的对象。`self` 参数是每个类方法的第一个参数,它代表类的实例。在这里,`color` 被赋予外部传入的值或默认值 'green',并存储在实例的属性 `self.color` 中。 `Hello1` 和 `printColor` 是公开的方法,可以在类的外部调用。而 `__localHello` 是一个私有方法,双下划线前缀表示这个方法仅在类内部可访问,不会被子类继承。 接下来,我们创建一个继承自 `Class1` 的子类 `Class2`: ```python class Class2(Class1): def Hello2(self): print("Hello from Class2!") print(self.k, "is my favorite number") ``` `Class2` 继承了 `Class1` 的所有方法和属性,包括变量 `k`。在这个例子中,`Class2` 添加了一个新的方法 `Hello2`,并且可以访问 `Class1` 的 `k` 变量。 现在我们可以创建 `Class1` 和 `Class2` 的实例,并调用它们的方法: ```python c1 = Class1('blue') c2 = Class2('red') c1.printColor() # 输出: I like the color blue c1.Hello1() # 输出: Hello from Class1! c2.Hello2() # 输出: Hello from Class2! # 7 is my favorite number ``` 通过上述代码,我们可以看到 `Class2` 实例 `c2` 不仅能够调用它自己新增的 `Hello2` 方法,还能调用从 `Class1` 继承过来的 `printColor` 方法。此外,`Class2` 也可以访问 `Class1` 的非私有变量 `k`。 类继承是 Python 中实现多态和封装的关键机制。通过继承,我们可以创建一个类层次结构,每个类专注于特定的职责,同时共享公共行为。这样既提高了代码的可维护性,也降低了复杂性。在实际开发中,类继承通常用于构建复杂的软件系统,如游戏引擎、数据库抽象层、图形用户界面库等。


























- 粉丝: 5
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- 材料的组成、结构、构造及其对性能的影响.ppt
- 钢筋混凝土组合结构3.ppt
- (50+70+50)m连续刚构毕业设计计算书.doc
- K3V12.0零售-POS培训.ppt
- 微信小程序校园微社区(1).zip
- 2011版建筑工程预算定额说明.doc
- 电渣压力焊技术交底.doc
- 制定食品防护计划“怎样实现”.ppt
- 微信小程序蓝牙打印.zip
- 微信小程序点餐+SpringBoot.zip
- 工程部项目经理个人年终总结.doc
- 重庆某房建项目施工合同.doc
- 微信小程序 外卖.zip
- 水布垭高面板坝趾板基础灌浆升压研究与实践.doc
- [福建]框架核心筒结构办公大楼工程临电施工方案(41页).doc
- 机械成孔灌注桩质量检验要求.ppt


