面向对象之继承

Posted 喻丰

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了面向对象之继承相关的知识,希望对你有一定的参考价值。

单继承:优先寻找自己的区间,没有就去父类找

class F1:
    """父类,基类"""

    def show(self):
        print(\'show\')

    def foo(self):
        print(self.name)


class F2(F1):
    """子类,派生类"""

    def __init__(self, name):
        self.name = name

    def bar(self):
        print(\'bar\')

F2(\'alex\').bar()
F2(\'alex\').show()     # 如果自己没有show方法,就去父类找
F2(\'alex\').foo()        # 自己的属性,可以被父类的方法使用,因为继承本质上相当于把父类的属性和方法写到自己的区间
View Code

 

 

多继承:跟单继承很相似,当父类不止一个并且父类的方法同名时,class c3(c1,c2), c1类的优先级更高

            当没有相同的父类时,用深度优先,

 

否则,深度优先到相同的父类,然后返回,直到最后再遍历这个相同的父类

 

 

继承思想:

 

以上是关于面向对象之继承的主要内容,如果未能解决你的问题,请参考以下文章

Python之面向对象继承详解以及面向对象三大特性

面向对象之继承

5_面向对象-中之面向对象的特征二:继承性

面向对象之继承与派生

二:面向对象之继承

面向对象的三大特性之继承