c#繼續中的函數挪用實例。本站提示廣大學習愛好者:(c#繼續中的函數挪用實例)文章只能為提供參考,不一定能成為您想要的結果。以下是c#繼續中的函數挪用實例正文
本文實例講述了c#繼續中的函數挪用辦法,分享給年夜家供年夜家參考。詳細剖析以下:
起首看上面的代碼:
using System;
namespace Test
{
public class Base
{
public void Print()
{
Console.WriteLine(Operate(8, 4));
}
protected virtual int Operate(int x, int y)
{
return x + y;
}
}
}
namespace Test
{
public class OnceChild : Base
{
protected override int Operate(int x, int y)
{
return x - y;
}
}
}
namespace Test
{
public class TwiceChild : OnceChild
{
protected override int Operate(int x, int y)
{
return x * y;
}
}
}
namespace Test
{
public class ThirdChild : TwiceChild
{
}
}
namespace Test
{
public class ForthChild : ThirdChild
{
protected new int Operate(int x, int y)
{
return x / y;
}
}
}
namespace Test
{
class Program
{
static void Main(string[] args)
{
Base b = null;
b = new Base();
b.Print();
b = new OnceChild();
b.Print();
b = new TwiceChild();
b.Print();
b = new ThirdChild();
b.Print();
b = new ForthChild();
b.Print();
}
}
}
運轉成果為:
12
4
32
32
32
從成果中可以看出:應用override重寫以後,挪用的函數是派生的最遠的誰人函數,應用new重寫則是挪用new之前的派生的最遠的函數,即把new看作沒有重寫似的。
願望本文所述對年夜家的C#法式設計有所贊助。