Python中的繼承和多態

2025年01月23日06:35:04 科技 1164

Python中的繼承和多態 - 天天要聞

  • 繼承是一種允許子類從父類繼承屬性和方法的機制,子類可以重寫或擴展父類的功能,實現多態。繼承可以避免代碼重複,提高代碼復用性。Python支持單繼承和多繼承,可以使用括弧和父類名來定義一個子類,如class 子類名(父類名):。例如:
  • # 定義一個父類
    class Animal:
        def __init__(self, name):
            self.name = name
    
        def eat(self):
            print(f"{self.name} is eating.")
    
        def sleep(self):
            print(f"{self.name} is sleeping.")
    
    # 定義一個子類,繼承自Animal類
    class Dog(Animal):
        def __init__(self, name, breed):
            # 調用父類的構造函數
            super().__init__(name)
            self.breed = breed
    
        def bark(self):
            print(f"{self.name} is barking!")
    
        # 重寫父類的方法
        def eat(self):
            print(f"{self.name} is eating dog food.")
    

    多態是指不同的子類對象調用相同的父類方法,產生不同的執行結果,增加了代碼的靈活性和可讀性。多態以繼承和重寫父類方法為前提,也可以通過鴨子類型來實現。鴨子類型是指不關注對象的類型,而只關注對象的行為,如果一個對象具有某種行為,就可以當作某種類型來使用。例如:

    # 定義一個函數,接受一個Animal類型的參數
    def animal_action(animal):
        animal.eat()
        animal.sleep()
    
    # 創建一個Dog對象和一個cat對象
    dog = Dog("Buddy", "Golden Retriever")
    cat = Cat("Kitty", "Persian")
    
    # 調用函數,傳入不同的對象
    animal_action(dog)
    animal_action(cat)
    
    # 輸出結果:
    Buddy is eating dog food.
    Buddy is sleeping.
    Kitty is eating cat food.
    Kitty is sleeping.

    科技分類資訊推薦

    李彥宏否定李彥宏?百度官宣下一代文心大模型開源,李廠長曾豪言「開源是智商稅」 - 天天要聞

    李彥宏否定李彥宏?百度官宣下一代文心大模型開源,李廠長曾豪言「開源是智商稅」

    剛剛,百度官方宣布將在未來幾個月內陸續推出文心大模型4.5系列,並於6月30日起正式開源。這一決定標誌著百度在AI戰略上的重大轉變,也引發了行業內外的廣泛關注。此前一天,百度剛剛宣布文心一言將於4月1日起全面免費,所有PC端和APP端用戶均可體驗文心系列最新模型。文心一言官網還同步透露即日起上線深度搜索功能,具備...
    小米在上賽擊敗保時捷!逐幀分析,我們終於找到了答案 - 天天要聞

    小米在上賽擊敗保時捷!逐幀分析,我們終於找到了答案

    眾所周知,小米汽車近期正用小米SU7 Ultra在全國各大賽車場刷圈,而且每次都是打破賽車場的最快記錄。而在2月14日,小米再一次打破了車迷們非常期待的上賽記錄。今日,小米正式發布了小米SU7 Ultra在上海國際賽車場(SIC)的圈速成績,時間為2分9秒944,擊敗了由保時捷Taycan Turbo GT在該賽車場創下的最快記錄,比保時捷快...
    Arm首款自研晶元曝光:台積電代工,Meta是首批客戶! - 天天要聞

    Arm首款自研晶元曝光:台積電代工,Meta是首批客戶!

    2月14日消息,據英國《金融時報》報導,全球最大的半導體IP技術供應商Arm正在開發自己的晶元,首款自研晶元最快會在今年夏天推出,將由台積電代工,Meta可能將會成為首批客戶之一。在該消息傳出後,推動Arm股價上漲了6%。眾所周知,Arm公司是全球眾多晶元設計廠商的關鍵IP供應商,比如,蘋果、高通、聯發科等眾多的晶元設計...
    多名蘋果用戶稱被彈窗盜刷銀行卡!客服回應 - 天天要聞

    多名蘋果用戶稱被彈窗盜刷銀行卡!客服回應

    近日,社交媒體上有多位網友反映,自己的蘋果手機突然收到了要求重設密碼的彈窗提醒,在修改密碼後出現了鎖屏密碼失效、銀行卡疑似被盜刷等問題。2月13日,一位河北網友告訴記者,因為鎖屏密碼失效,自己不得不抹除了自己蘋果手機的數據。
    百度宣布將開源下一代文心大模型 - 天天要聞

    百度宣布將開源下一代文心大模型

    紅星資本局2月14日消息,紅星資本局從百度獲悉,百度將在未來幾個月中陸續推出文心大模型4.5系列,並於6月30日起正式開源。近日,百度推出多項AI開放政策。2月13日,百度宣布文心一言將於4月1日0時起全面免費,所有PC端和APP端用戶均可體驗文心系列最新模型,以及超長文檔處理、專業檢索增強、高級AI繪畫、多語種對話等功能...
    宇樹科技新四足機器人外觀曝光 - 天天要聞

    宇樹科技新四足機器人外觀曝光

    【環球網科技綜合報道】2月14日消息,天眼查知識產權信息顯示,近日,杭州宇樹科技有限公司申請的「四足機器人(福虎生威)」外觀專利獲授權。摘要顯示,該外觀設計產品用於機械類機器人,其設計要點在於形狀。資料顯示,杭州宇樹科技有限公司成立於2016年8月,法定代表人為王興興,註冊資本約259萬人民幣,經營範圍包括智...
    巨人網路與阿里雲深化AI合作  打造個性化遊戲體驗 - 天天要聞

    巨人網路與阿里雲深化AI合作 打造個性化遊戲體驗

    【環球網互娛綜合報道】2月14日,巨人網路宣布與阿里雲深化合作,雙方基於近年來「遊戲+AI」合作基礎上,在遊戲場景的AI落地應用及算力生態建設等領域進一步聯動,推動AI技術與公司業務的深度融合。自2023年雙方啟動「遊戲+AI」全面合作以來,巨人網路在AIGC技術、遊戲內容生成等領域取得多個成果。巨人網路旗下社交推理游...
    尚界只是開始,華為還有接下來的動作? - 天天要聞

    尚界只是開始,華為還有接下來的動作?

    鴻蒙智行「第五界」要來了? 近日,有消息傳出,華為與上汽的合作模式已確定將使用智選車模式,從上汽註冊的商標來看,該品牌名初步為「尚界」。據了解,「尚界」的首款車型將基於飛凡汽車的現有產品開....
    超25億!人形機器人最大單筆融資官宣,谷歌參投 - 天天要聞

    超25億!人形機器人最大單筆融資官宣,谷歌參投

    機器人前瞻(公眾號:robot_pro)作者 | 許麗思編輯 | 漠影機器人前瞻2月14日報道,當地時間2月13日,美國人形機器人初創公司Apptronik宣布完成3.5億美元(約合人民幣25.4億元)的A輪融資,本輪融資由由B Capital和Capital Factory共同領投,谷歌參投。截至目前,這是2025年人形機器人領域金額最大的單筆融資。App