# 多型 普通版本
# 對於同乙個方法,由於呼叫的物件不同(或者傳入的物件不同),最終實現了不同的結果
# 定義電腦類
class
computer()
: # 在電腦類中定義乙個 sub 的規範的介面 方法
def usb
(self,obj)
: obj.
start()
# 定義滑鼠類
class
mouse()
: def start
(self)
:print
('滑鼠啟動成功。'
)# 定義鍵盤類
class
keybord()
: def start
(self)
:print
('鍵盤啟動成功了。'
)# 定義 u盤 類
class
udisk()
: def start
(self)
:print
('u盤啟動了,趕緊檢查一下我的文件還在不在。'
)# 例項化物件
c =computer
() # 電腦物件
m =mouse
() # 滑鼠物件
k =keybord
() # 鍵盤物件
u =udisk
() # u盤物件
# 把不同的裝置插入到電腦的usb的介面中
c.usb
(m)c.
usb(k)
c.usb
(u)
# 多型 繼承版
'''定義乙個介面規範類,其它類都繼承這個類,並實現(重寫)父類中的方法
由於每個物件實現父類方法的方式或者過程都不相同,最後的結果是不一樣的形態
'''# 定義 usb
class
usb():
''' 當前類的說明:
這個類是乙個介面規範類,需要子類繼承並實現start方法
start方法不做任何具體功能的實現
'''# 在usb類中定義乙個規範的介面方法,但是不實現任何功能,
def start
(self)
: pass
# 定義滑鼠類
class
mouse
(usb):
def start
(self)
:print
('滑鼠啟動成功,可以雙擊單擊嗨起來。。。'
)# 定義鍵盤類
class
keybord
(usb):
def start
(self)
:print
('鍵盤啟動成功了,準備工作啦。'
)# 定義 u盤 類
class
udisk
(usb):
def start
(self)
:print
('u盤啟動了,趕緊檢查一下我的文件還在不在。'
)# 例項化物件
m =mouse
() # 滑鼠物件
k =keybord
() # 鍵盤物件
u =udisk
() # u盤物件
m.start()
k.start()
u.start
()
php物件導向三大特性之一多型
1.抽象類是乙個特殊的方法,介面是特殊的抽象類,多型就是使用抽象類和介面 2.是物件導向設計的重要特性,它展現了動態繫結的功能,也稱為 同名異式 多型的功能可以讓軟體在開發和維護時,達到充分的延伸性。事實上,多型最直接的定義就是讓具有繼承關係的不同類物件,可以以相同名稱的成員函式呼叫,產生不同的反應...
物件導向三大特性之一 多型(C )
目錄 多型的定義及實現 抽象類多型的原理 單繼承和多繼承關係的虛函式表 1 什麼是多型?當不同的物件去完成某個行為時,會產生出不同的結果。多型是 不同繼承關係的類物件去呼叫同一函式時,產生了不同的行為。例如 student類繼承了person類。person物件買票全價,student物件買票半價。...
python物件導向的三大特性之一多型
多型的特性是呼叫不同的子類將會產生不同的行為,而無需明確知道這個子類實際上是什麼 說白了就是,不同的物件呼叫相同的方法,產生不同的行為 例如 s1是字串型別,w1是列表,兩個完全不同的物件,他們都可以呼叫len方法,而得出的結果不同 多型實際上是依附於繼承的兩種含義 改變 和 擴充套件 本身就意味著...