13.9 组合
有两种方法可以在你的代码中利用类。第一种是组合(composition)。就是让不同的类混合并加入到其他类中,来增加功能和代码重用性。另一种方法是通过派生。
>>> class C1(object): ... def __init__(self): ... self.att1 = 1 ... >>> class C2(object): ... def __init__(self): ... self.att2 = 2 ... >>> class C(object): ... def __init__(self): ... self.C1= C1() ... self.C2= C2() ... >>> C().C1.att1 1 >>> 13.10 子类和派生
OOP的最强大功能之一是能够使用一个已经定义好的类,扩展它或者对其进行修改,而不是影响系统中现存类的其他代码片段。OOD允许类特征在子孙类或子类中进行继承。这些子类从基类继承它们的核心属性。而且,这些派生可能会扩展到多代。在一个层次的派生关系中的相关类是父类和子类关系。从同一个父类派生出来的这些类是同胞关系。父类和所有高层类都被认为是祖先。
>>> class C1(object):
... def __init__(self):
... self.att1 = 1
...
>>> class C(C1):
... att2 = 2
...
>>> C().att2
2
>>> C().att1
1
>>>
本文深入探讨了类的组合和派生两种方式在面向对象编程中的作用,通过实例展示了如何利用类组合增加功能和代码重用性,以及如何通过派生创建具有继承特性的子类。同时,介绍了类继承的概念,解释了子类如何从基类继承属性,并可能扩展到多代。文章旨在帮助开发者更好地理解和应用面向对象编程的核心概念。

被折叠的 条评论
为什么被折叠?



