多型性就是多種表現形式,具體來說,可以用"乙個對外介面,多個內在實現方法"表示。舉乙個例子,計算機中的堆疊可以儲存各種格式的資料,包括整型,浮點或字元。不管儲存的是何種資料,堆疊的演算法實現是一樣的。針對不同的資料型別,程式設計人員不必手工選擇,只需使用統一介面名,系統可自動選擇。
多型性也分靜態多型性和動態多型性兩種。靜態多型性是指定義在乙個類或乙個函式鐘的同名函式,它們根據參數列(型別以及個數)區別語義,並通過靜態聯編實現,例如,在乙個類中定義的不同引數的建構函式。動態多型性是指定義在乙個類層次的不同類中的過載函式,它們一般具有相同的函式,因此要根據指標指向的物件所在類來區別語義,它通過動態聯編實現。
「多型性」一詞最早用於生物學,指同一種族的生物體具有相同的特性。在物件導向理論中,多型性的定義是:同一操作作用於不同的類的例項,將產生不同的執行結果,即不同類的物件收到相同的訊息時,得到不同的結果。多型性包含編譯時的多型性 執行時的多型性兩大類。
動態多型是指發出同樣的訊息被不同型別的物件接收時,有可能導致完全不同的行為。即,在使用者不作任何干預的環境下,類的成員函式的行為能根據
呼叫它的物件型別自動作出適應性調整,而且調整是發生在程式執行時。
多型與多型性
1.什麼是多型 多型指的是同一種 類事物的不同形態 2.為何要用多型性 1 增加了程式的靈活性 2 增加了程式的可擴張性 多型性 分為靜態多型性和動態多型性 多型性 在多型的背景下,可以在不用考慮物件具體型別的前提下而直接使用物件 多型性的精髓 統一 3.如何用多型 class animal def...
this指標多型性
public class dervied extends base private string name dervied protected string id 2 public dervied public void tellname public void printname public s...
物件多型性
基本概念的解釋。多型性的依賴條件是方法的覆寫!觀察如下的乙個程式 class a class b extends a public class test 輸出結果是 b print 一 方法的多型性 1 方法的過載 同乙個方法名稱會根據傳入引數的型別及個數不同執行不同的方法體 2 方法的覆寫 同乙個...