深入瞭解Python的繼承

面向對象三大特性:

  • 封裝 根據 職責 將 屬性 和 方法 封裝 到一個抽象的 類 中;
  • 繼承 實現代碼的重用,相同的代碼不需要重復的編寫;
  • 多態 不同的對象調用相同的方法,產生不同的執行結果,增加代碼的靈活性;

1、單繼承

1.1 繼承的概念、語法和特點

繼承的概念:子類 擁有 父類 的所有 方法 和 屬性;

不使用繼承類

class Animal:
   def eat(self):
       print("吃")
   def drink(self):
       print("喝")
   def run(self):
       print("跑")
   def sleep(self):
       print("睡") 
class Dog:
   def eat(self):
        print("吃")
   def drink(self):
        print("喝")
   def run(self):
        print("跑")
   def sleep(self):
        print("睡")
   def bark(self):
        print("汪汪叫") 
# 創建一個對象 - 狗對象
wangcai = Dog() 
wangcai.eat()
wangcai.drink()
wangcai.run()
wangcai.sleep()
wangcai.bark()

1)、繼承的語法

class 類名(父類名):
     pass

子類 繼承自 父類,可以直接 享受 父類中已經封裝好的方法,不需要再次開發;

子類 中應該根據 職責,封裝 子類特有的 屬性和方法;

使用繼承類:

class Animal:
   def eat(self):
       print("吃---")
   def drink(self):
       print("喝---")
   def run(self):
       print("跑---")
   def sleep(self):
       print("睡---") 
class Dog(Animal):
   # 子類擁有父類的所有屬性和方法
    # def eat(self):
    #     print("吃")
    #
    # def drink(self):
    #     print("喝")
    #
    # def run(self):
    #     print("跑")
    #
    # def sleep(self):
    #     print("睡")
   def bark(self):
        print("汪汪叫") 
# 創建一個對象 - 狗對象
wangcai = Dog() 
wangcai.eat()
wangcai.drink()
wangcai.run()
wangcai.sleep()
wangcai.bark()

2)、專業術語

Dog 類 Animal 類的子類 ,Animal 類是 Dog 類的父類,Dog 類 從 Animal 類繼承;

Dog 類 Animal 類的派生類,Animal 類是 Dog 類的基類,Dog 類從 Animal 類派生;

總結

本篇文章就到這裡瞭,希望能夠給你帶來幫助,也希望您能夠多多關註WalkonNet的更多內容!

推薦閱讀: