1. 程式人生 > 其它 >C#過載和重寫

C#過載和重寫

一、過載

過載就是在同一個類中,方法名相同,引數列表不同,返回型別可以不相同。引數列表不同包括:引數的個數不同,引數型別不同等。

以下就是返回型別可以不相同,但是他們的引數列表必須不同

        public void Method2(int i,string j)
        {

        }
        public string Method2()
        {
            return null;
        }    

      public string Method2(int i)
      {
        return null;
      }

二、重寫

重寫就是子類重寫父類的方法,在呼叫的時候,子類的方法會覆蓋父類的方法,也就是會呼叫子類的方法。在父類中的方法必須有修飾符virtual,而在子類的方法中必須指明override。

在重寫中,子類繼承父類,不同的例項化方式會呼叫不同的方法。

class Child:Parent
{
        public override void ParentMethod()
        {            
            Console.WriteLine("this is child");
        }
}
class Parent
{
     public
virtual void ParentMethod() { Console.WriteLine("this is parent"); } }

parent a=new Child();

a.ParentMethod();

這裡呼叫的是Child類中的方法。