首页常见问题正文

Python单继承和多继承的区别是什么?

更新时间:2023-03-30 来源:黑马程序员 浏览量:

IT培训班

  在Python中,类可以从一个或多个其他类中继承。单继承意味着一个类只能从一个类继承属性和方法,而多继承意味着一个类可以从多个类继承属性和方法。

  以下是单继承和多继承的示例代码:

      1.单继承

class Animal:
    def __init__(self, name):
        self.name = name
    
    def speak(self):
        pass
    
class Dog(Animal):
    def speak(self):
        return "Woof!"

dog = Dog("Fido")
print(dog.name)
print(dog.speak())

  在这个例子中,我们定义了一个Animal类,它有一个名称属性和一个speak()方法。然后我们定义了一个 Dog类,它从Animal类继承,并覆盖了speak()方法。我们创建一个名为Fido的Dog对象,并打印它的名称和它的 speak()方法的结果,它应该返回 "Woof!"。

1680145723559_Python单继承和多继承的区别是什么.jpg

  2.多继承

class Animal:
    def __init__(self, name):
        self.name = name
    
    def speak(self):
        pass
    
class Dog(Animal):
    def speak(self):
        return "Woof!"
    
class Cat(Animal):
    def speak(self):
        return "Meow!"
    
class DogCat(Dog, Cat):
    pass

dogcat = DogCat("Fido")
print(dogcat.name)
print(dogcat.speak())

  在这个例子中,我们定义了Animal、Dog和Cat类,它们分别具有名称属性和speak()方法。然后我们定义了一个DogCat类,它从Dog和Cat类继承。我们创建一个名为Fido的DogCat对象,并打印它的名称和它的speak()方法的结果,它应该返回"Woof!",因为Dog类排在Cat类前面。

分享到:
在线咨询 我要报名
和我们在线交谈!