Python 【类的继承】

laityc 2020-03-01

一.类的继承

#类的继承

class Animal(object):  #Animal类继承object

    def __init__(self,color):

        self.color = color

    def eat(self):

        print("动物在吃!")

    def run(self):

        print("动物在跑")



class Cat(Animal):  #Cat继承Aninal  继承[属性和方法]

    pass



cat = Cat("白色")


print(cat.color)

cat.eat()

上面定义Animal类,Animal类继承基类object,Animal类中有属性color和方法

Cat类继承Animal类,继承了属性和方法

二.super()继承

#类的继承

class Animal(object):  #Animal类继承object

    def __init__(self,color):

        self.color = color

    def eat(self):

        print("动物在吃!")

    def run(self):

        print("动物在跑")



class Cat(Animal):  #Cat继承Aninal  继承[属性和方法]

    pass


class Dog(Animal):  #继承时候,方法重名用子方法

    def __init__(self,name,age,color):
        super(Dog,self).__init__(color)  #super表示父类,调用父类的初始化方法

        self.name = name

        self.age = age

    def eat(self):  #方法重名
        print("狗仔!")
        



dog = Dog("狗仔队",12,"黑色")

现在根据上面的继承后,再次创建一个Dog类,定义了与Animal类重名的eat方法

使用super(className,self).__init__(color),super表示的是父类,让className继承父类的color属性,不需要再次重写属性

在实例化的过程中,传入参数,类的实例化传入的参数对象本身self就是一个参数

相关推荐