国产成+人+综合+亚洲 欧美-国产成+人+综合+亚洲专-国产成+人欧美+综合在线观看-国产成a人片在线观看视频-国产成a人片在线观看视频99-国产成a人片在线观看视频下载

您現在所在的位置:首頁 >學習資源 > Python全棧+人工智能入門教材 > Python基礎入門教程26:企業級開發基礎7 面向對象特征(多態)

Python基礎入門教程26:企業級開發基礎7 面向對象特征(多態)

來源:奇酷教育 發表于:

面向對象程序設計最主要的有三個特征:封裝、繼承、多態本節內容主要講解面向對象的第一個特征:多態1 多態的意義多態是讓我們的程序在運

面向對象程序設計最主要的有三個特征:封裝、繼承、多態
 
本節內容主要講解面向對象的第一個特征:多態
 
1 多態的意義
 
多態是讓我們的程序在運行的過程中,在不同的狀態下進行動態的切換,實現復雜的功能為目的的一種程序開發手段
 
在之前的章節中,實現了類型的繼承關系之后,其實我們已經見過多態的一種操作了:方法重寫實現的運行時多態,對象在執行具體的方法時,會直接執行父類中繼承的對應的方法,如果該方法在子類中重寫了,就會執行子類中重寫過的方法,實現的是一種運行過程中的多態處理,代碼如下:

2. 多態的擴展
 
我們定義一個這樣的醫療系統,所有的男人、女人、小孩等等都可以去醫院看病,然后康復的一個過程。


上面的代碼中,我們已經可以看到,只要是從Person類型繼承過來的類型所創建的對象,都可以在醫院Hospital對象的care()中進行治療。已經是一種多態。
 
同時如果功能需要擴展,需要多出來一個人物類型:小孩,小孩也會生病,也需要治療~此時對于功能的擴展非常簡潔,值需要添加如下代碼就可以搞定:

2. 多態的完善
 
上面的代碼中,我們其實是存在一定的缺陷的
上述代碼設計的初衷是醫院對象可以治病救人,也就是Hosiptal對象的care()函數可以治療Person派生出來的對象。
但是從代碼邏輯中,我們可以看到只要傳遞給care()函數的參數對象中包含health()函數就可以進行處理,而并非必須是Person對象。
 
此時需要在函數中進行判斷處理,如果是Person對象就進行care()治療的處理,如果不是Person對象,就提示不做治療操作。
 
對象和類型的判斷可以通過isinstance(obj, Type)進行類型的判斷,如:

上述代碼中,我們可以觀察到通過isinstance()函數進行變量所屬數據類型的判斷了,同時在繼承關系中,有一個情理之中的判斷結果:man是Man類型的,同時也是Person類型的,因為Man類型是從Person類型繼承過來的。
 
所以可以對之前的Hospital的care()函數進行如下改造:


>>>更多VR/AR入門教程:VR入門
主站蜘蛛池模板: 婷婷在线视频国产综合 | 国国产自国偷自产第38页 | 久久久久久久久中文字幕 | 精品热久国产福利视频 | 夜夜操影院| 久久不雅视频 | 乱色欧美videos黑人 | 最新中文字幕一区 | 九九热这里都是精品 | 天海翼精品久久中文字幕 | 精品日产一区二区三区手机 | 欧美性色欧美a在线观看 | 九九视频精品全部免费播放 | 欧美最大成人毛片视频网站 | 夜夜爽夜夜叫夜夜高潮漏水 | 久久红综合久久亚洲网色 | 亚洲国产精品一区二区久 | 中文字幕第一页国产 | 精品一久久香蕉国产线看观看下 | 亚洲日本va中文字幕区 | 亚洲精品午夜级久久久久 | 香蕉在线影院 | 亚洲综合首页 | 亚洲天天做夜夜做天天欢 | 欧美日韩国产高清 | 成人性色生活片免费网 | 国产乳摇福利视频在线观看 | 国产视频久 | 日韩欧美在线看 | 久久99精品久久久久久黑人 | 一区二区三区视频 | 亚洲一区二区三区免费视频 | 99国产超薄丝袜足j在线观看 | 色在线播放| 国产成人毛片精品不卡在线 | 性生大片一级毛片免费观看 | 美女福利在线观看 | 国产欧美另类久久久精品免费 | 午夜精品久久久久久久90蜜桃 | 青青国产成人久久激情911 | 成人国内精品久久久久影院 |