多型-不同物件作用於相同方法,呈現的結果不同
表現形式為a類 物件名=new b類() a類和b類之間存在直接或間接的繼承關係,a類叫做申明類,b類叫做例項類
執行時多型:過載(overload)
編譯時多型:重寫(override)
過載:方法名相同,形參的型別個數順序不同,只與形參有關,與返回值無關
重寫:繼承父類的虛方法、抽象方法、override修飾的方法或實現介面class
people
public
string name
public
people()
public
people
(string name,
int age)
public
void
eat(
)public
void
eat(
string s,
int i)
public
void
eat(
int i,
string s)
}
class
people
public
string name
public
people()
public
people
(string name,
int age)
public
virtual
void
sayhi()
,你好!"
,name);}
}class
student
:people
學生好"
,name);}
}
物件導向三大特徵之一多型
在介紹完前面那兩個物件導向的兩個特性之後,接下來就是最後乙個特性 多型 定義 多型表示不同的物件可以執行相同的動作,但要通過它們自己的實現 來執行。例子 在國粹 京劇 中,很多都是師傅帶徒弟,是代代相傳的藝術。假設師傅是乙個非常著名的京劇藝術家,徒弟也很厲害,模仿師傅的戲十分的惟妙惟肖。有一天,師傅...
物件導向三大特徵之一多型
乙個物件有不同的形態。比如 每個人在不同的場景有著不同的身份 多型在預設情況下只能呼叫子類重寫的方法,不能呼叫子類特有方法。等號左邊是誰就呼叫誰的成員變數 看new的是誰就呼叫誰的成員方法 一定是子類重寫的!不能是子類特有的方法!那我們為什麼要用多型呢?多型的好處不是體現在new物件的,而是體現在方...
java中物件導向三大特徵之一多型
不同的物件,接受到相同的訊息,產生的響應不同就是多型。多型的前提 必須是類與類之間有關係。要麼繼承,要麼實現。通常還有乙個前提 存在覆蓋。多型的好處 1.可替換性 substitutability 多型對已存在 具有可替換性。例如,多型對圓circle類工作,對其他任何圓形幾何體,如圓環,也同樣工作...