免费视频淫片aa毛片_日韩高清在线亚洲专区vr_日韩大片免费观看视频播放_亚洲欧美国产精品完整版

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
override 和overload 的區(qū)別?

override是重寫,是在子類與父類中,子類中方法的方法名,參數(shù)個數(shù)、類型都與父類中的完全一樣,在子類中覆蓋掉了父類的方法。
overload是重載,是有相同的方法名,但參數(shù)類型或參數(shù)個數(shù)不同。
override:

View Code
using System;class TestOverride{    public class Employee    {        public string name;        // Basepay is defined as protected, so that it may be         // accessed only by this class and derrived classes.        protected decimal basepay;        // Constructor to set the name and basepay values.        public Employee(string name, decimal basepay)        {            this.name = name;            this.basepay = basepay;        }        // Declared virtual so it can be overridden.        public virtual decimal CalculatePay()        {            return basepay;        }    }    // Derive a new class from Employee.    public class SalesEmployee : Employee    {        // New field that will affect the base pay.        private decimal salesbonus;        // The constructor calls the base-class version, and        // initializes the salesbonus field.        public SalesEmployee(string name, decimal basepay,                  decimal salesbonus)            : base(name, basepay)        {            this.salesbonus = salesbonus;        }        // Override是重寫,是在子類與父類中,子類中的方法的方法名,參數(shù)個數(shù)、類型都與父類中的完全一樣,在子類中覆蓋掉了父類的方法。        // Override the CalculatePay method         // to take bonus into account.        public override decimal CalculatePay()        {            return basepay + salesbonus;        }    }    static void Main()    {        // Create some new employees.        SalesEmployee employee1 = new SalesEmployee("Alice",                      1000, 500);        Employee employee2 = new Employee("Bob", 1200);        Console.WriteLine("Employee4 " + employee1.name +                  " earned: " + employee1.CalculatePay());        Console.WriteLine("Employee4 " + employee2.name +                  " earned: " + employee2.CalculatePay());    }}/*    Output:    Employee4 Alice earned: 1500    Employee4 Bob earned: 1200*/

overload:

View Code
using System;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");            }            // 重載是有相同的方法名,但參數(shù)類型或參數(shù)個數(shù)不同。            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);        }    }}

 

本站僅提供存儲服務,所有內容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權內容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
一步一步學習C#(四 繼承) - MR
C#虛方法和抽象方法
Visitor(訪問者)
.net面試題3
設計模式學習筆記(十)——Decorator裝飾模式
淺談C# 多態(tài)的魅力
更多類似文章 >>
生活服務
分享 收藏 導長圖 關注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服