方法簽章中的新關鍵字
問題: new 關鍵字在方法簽名中表示什麼?
答案: 在方法簽章中,新的關鍵字指示該方法是衍生類別中的新方法,隱藏了方法的基底類別實作。它與 override 關鍵字不同,override 關鍵字只能用於重寫基底類別中聲明的虛擬方法。
範例:
考慮以下基類:
public class Base { public void BaseMethod() {} }
現在,讓我們建立一個衍生類,使用override 來重寫BaseMethod關鍵字:
public class Derived : Base { public override void BaseMethod() {} }
在此範例中,override關鍵字告訴編譯器衍生類別中的 BaseMethod 方法正在重寫基底類別實作。
但是,現在讓我們建立一個不同的衍生類別class 並在方法簽章中使用new 關鍵字:
public class AnotherDerived : Base { public new void BaseMethod() {} }
上例中使用new 關鍵字是因為衍生中的BaseMethod方法類別沒有覆蓋基底類別的實作。相反,它會建立一個與基底類別方法同名的新方法。
new 和override 之間的主要區別:
以上是方法簽名中的'new”關鍵字意味著什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!