C# overload重載 override重寫 區別

1、overload

(1)overload 即 重載,就是函數名相同,函數參數不同,和C++中的重載一樣,沒什麼需要多說。
(2)舉例:

// overload:重載,函數名相同,參數不同。
public string ToString(){return "a";}
public string ToString(int id){return id.ToString();}

2、override

(1)override 即 重寫,也可翻譯成“覆蓋”;
(2)override是在子類中重新實現父類中的虛函數,用來覆蓋父類中的函數;
(3)override也是C#中的關鍵字;
(4)override的用法和作用和C++中的虛函數相同,只是在C#中使用需要用override關鍵字聲明;
(5)舉例:

// override: 重寫,子類中重寫虛方法。
// 父類:
public virtual string ToString(){return "a";}
// 子類:
public override string ToString(){return "b";}

3、區別:
(1)overload重載,override重寫;
(2)重載是函數名相同,函數參數不同;重寫是函數名和函數參數都相同;
(3)重載通常在一個類中,重新是在子類中重寫父類中的虛函數;
(4)overload不是關鍵字,override是C#中的關鍵字;

參考:https://www.cnblogs.com/Tanghongchang/p/7140516.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章