C# 中的方法重寫與方法隱藏
在 C# 中,方法重寫和方法隱藏是兩種不同的機制,用來修改繼承的方法。
方法重寫 (Overriding)
方法重寫涉及在基底類別中建立虛方法 (virtual),並在衍生類別中重新定義其實作。這允許衍生類別提供更具體或修改後的方法版本,同時保留相同的方法名稱和參數。
方法重寫用於以下情況:
override
關鍵字。 方法隱藏 (Method Hiding)
方法隱藏涉及建立具有與基底類別方法相同名稱和參數的新方法 (new)。與方法重寫不同,方法隱藏在衍生類別中建立了一個全新的方法,並且不會修改基底類別方法。
方法隱藏用於以下情況:
new
關鍵字。 實際應用
方法重寫 (Overriding):
方法隱藏 (Method Hiding):
範例
以下範例示範了方法重寫和方法隱藏:
<code class="language-csharp">class Animal { public virtual void MakeSound() { Console.WriteLine("Generic animal sound"); } } class Dog : Animal { public override void MakeSound() { Console.WriteLine("Bark"); } public new void Run() // 方法隐藏 { Console.WriteLine("Dog running"); } }</code>
在此範例中,MakeSound
方法在 Dog
類別中被重寫以提供具體的實作。 Run
方法被隱藏,在 Dog
類別中建立了一個新方法。
以上是C# 中的覆蓋與隱藏:有什麼區別?的詳細內容。更多資訊請關注PHP中文網其他相關文章!