C# override和overload經驗總結
C#語言還是比較常見的東西,這里我們主要介紹C# override和overload區別,包括介紹C# override和overload特點等方面。
C# override和overload特點
重載(Overload)類中定義的方法可能有不同的版本特點:
◆方法名必須相同
◆參數列表必須不相同
◆返回值類型可以不相同
覆寫(overwrite)子類為滿足自己的需要來重復定義某個方法的不同實現,通過使用關鍵字override來覆寫。特點:
◆相同的方法名稱
◆相同的參數列表
◆相同的返回值類型
C# override和overload區別
◆override 表示重寫,用于繼承類對基類中虛成員的實現
◆overload 表示重載,用于同一個類中同名方法不同參數(包括類型不同或個數不同)的實現
- using System;
- using System.Collections.Generic;
- using System.Text;
- namespace Example07
- {
- class Program
- {
- class BaseClass
- {
- public virtual void F()
- {
- Console.WriteLine("BaseClass.F");
- }
- }
- class DeriveClass : BaseClass
- {
- public override void F()
- {
- base.F();
- Console.WriteLine("DeriveClass.F");
- }
- public void Add(int Left, int Right)
- {
- Console.WriteLine("Add for Int: {0}", Left + Right);
- }
- public void Add(double Left, double Right)
- {
- Console.WriteLine("Add for int: {0}", Left + Right);
- }
- }
- static void Main(string[] args)
- {
- DeriveClass tmpObj = new DeriveClass();
- tmpObj.F();
- tmpObj.Add(1, 2);
- tmpObj.Add(1.1, 2.2);
- Console.ReadLine();
- }
- }
- }
【編輯推薦】