python 继承

在OOP程序设计中,当我们定义一个class的时候,可以从某个现有的class继承,新的class称为子类(Subclass),而被继承的class称为基类、父类或超类(Base class、Super class)。

class Animal(object):
    def run(self):
        print('Animal is running...')
        
#当我们需要编写Dog和Cat类时,就可以直接从Animal类继承:
class Dog(Animal):
    pass

class Cat(Animal):
    pass
dog = Dog()
dog.run()
      
Animal is running...

继承有什么好处?最大的好处是子类获得了父类的全部功能。由于Animial实现了run()方法,因此,Dog和Cat作为它的子类,什么事也没干,就自动拥有了run()方法:

class Animal(object):
    def run(self):
        print('Animal is running...')   
class Dog(Animal):

    def run(self):
        print('Dog is running...')
dog = Dog()
dog.run()
Dog is running...

当子类和父类都存在相同的run()方法时,我们说,子类的run()覆盖了父类的run(),在代码运行的时候,总是会调用子类的run()。这样,我们就获得了继承的另一个好处:多态。

posted @ 2018-10-06 21:37  luoganttcc  阅读(87)  评论(0编辑  收藏  举报