在用作修飾符時,new 關鍵字可以顯式隱藏從基類繼承的成員。隱藏繼承的成員意味著該成員的派生版本將替換基類版本。在不使用 new 修飾符的情況下隱藏成員是允許的,但會生成警告。使用 new 顯式隱藏成員會取消此警告,並記錄代之以派生版本這一事實。若要隱藏繼承的成員,請使用相同名稱在派生類中聲明該成員,並使用 new 修飾符修飾該成員。例如:
public class BaseC
{
public int x;
public void Invoke() {}
}
public class DerivedC : BaseC
{
new public void Invoke() {}
}