Python基礎之類的多態與多態性

不少人喜歡將多態多態性兩者混爲一談,而後百思不得其解,其實只要分開看,就會很明朗。函數

一 多態:

多態指的是一類事物有多種形態,(一個抽象類有多個子類,於是多態的概念依賴於繼承)對象

  1. 序列類型有多種形態:字符串,列表,元組
  2. 動物有多種形態:人,狗,豬

     

 

 文件有多種形態:文件、文本文件、可執行文件blog

 

 

二 多態性

(1)什麼是多態性(注意:多態與多態性是兩種概念)繼承

多態性是指具備不一樣功能的函數可使用相同的函數名,這樣就能夠用一個函數名調用不一樣內容的函數。在面向對象方法中通常是這樣表述多態性:向不一樣的對象發送同一條消息,不一樣的對象在接收時會產生不一樣的行爲(即方法)。也就是說,每一個對象能夠用本身的方式去響應共同的消息。所謂消息,就是調用函數,不一樣的行爲就是指不一樣的實現,即執行不一樣的函數。接口

 

 

 

 

 

 

 

 綜上能夠說,多態性是一個接口(函數func),多種實現(如f.click())字符串

2、爲何要用多態性(多態性的好處)

其實你們從上面多態性的例子能夠看出,咱們並無增長上面新的知識,也就是說Python自己就是支持多態性的,這麼作的好處是什麼呢?
(1)增長了程序的靈活性
  以不變應萬變,不論對象變幻無窮,使用者都是同一種形式去調用,如func(animal)
(2)增長了程序額可擴展性
  經過繼承animal類建立了一個新的類,使用者無需更改本身的代碼,仍是用func(animal)去調用class

 

 

注:cli

多態:同一種事物的多種形態,動物分爲人類,豬類(在定義角度) 多態性:一種調用方式,不一樣的執行效果(多態性)擴展

相關文章
相關標籤/搜索