首頁常見問題正文

Python單繼承和多繼承的區(qū)別是什么?

更新時間: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()方法。我們創(chuàng)建一個名為Fido的Dog對象,并打印它的名稱和它的 speak()方法的結果,它應該返回 "Woof!"。

1680145723559_Python單繼承和多繼承的區(qū)別是什么.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類繼承。我們創(chuàng)建一個名為Fido的DogCat對象,并打印它的名稱和它的speak()方法的結果,它應該返回"Woof!",因為Dog類排在Cat類前面。

分享到:
在線咨詢 我要報名
和我們在線交談!