c# 隱藏函式
阿新 • • 發佈:2018-11-08
如果簽名相同的方法在基類和派生類中都進行了宣告,但是該方法沒有分別宣告為virtual和override,派生類就會隱藏基類方法。(要使用new關鍵字進行宣告)
class Enemy
{
public void Move()
{
Console.WriteLine("這是呼叫的Enemy.Move()");
}
}
//派生類(在派生類中把基類同名的方法隱藏掉了) class Boss:Enemy { public new void Move() { Console.WriteLine("這是呼叫的Boss.Move()"); } }
class Program { static void Main(string[] args) { Enemy boss1 = new Boss(); boss1.Move(); Boss boss2 = new Boss(); boss2.Move(); Enemy enemy = new Enemy(); enemy.Move(); Console.ReadKey(); } }