重寫:重寫是指重寫基類的方法。注意:基類的方法一定要使用virtual修飾符,派生類的方法一定要使用override修飾符。
例:public class a
}public class b : a
}static void main(string args)
結果為:子類。
多型:同一種操作作用於不同的物件,可以有不同的解釋,產生不同的執行結果,這就是多型性。
在c#中,多型性通過派生類複寫基類中的虛函式型方法來實現
例:public class animal
}
public class cat : animal
}
public class dog : animal
}
static void main(string args)
public void test(int x,ref int y){}
public void test(int x,int y,string a){}
過載特徵:
i.方法名必須相同
ii.引數列表必須不相同,與引數列表的順序無關
iii.返回值型別可以不相同
重寫,過載,多型
override是重寫 覆蓋 了乙個方法,以實現不同的功能。一般是用於子類在繼承父類時,重寫 重新實現 父類中的方法。class a public b overload是過載,一般是用於在乙個類內實現若干過載的方法,這些方法的名稱相同而引數形式不同。void add void add int a 繼...
多型 重寫 過載。
多型 就是允許不同的類的物件對同乙個訊息做出不同的響應。根據傳送物件的不同採用不同的行為方式。比如演奏鋼琴時呼叫play 函式後返回的訊息是piano。演奏手風琴時呼叫play 函式後返回的訊息是accordion。這就是多型。過載就是除了引數的個數或者引數的型別不同外,其他都相同的多個方法。比如 ...
重寫 覆蓋 過載 多型
這篇部落格很亂,關於過載 隱藏 覆蓋的相關知識,看另一篇部落格 參考部落格 其實多型和過載不是乙個層次上的問題,重寫 覆蓋 過載 隱藏常放在一起討論,多型是重寫 覆蓋 下的一種特殊情況,即基類的函式被virtual修飾了。1 多型和過載的區別 多型是基於對抽象方法的覆蓋來實現的,用統一的對外介面來完...