溫馨提示×

C#虛擬類如何實現方法隱藏

c#
小樊
103
2024-09-20 03:56:22
欄目: 云計算

在 C# 中,方法隱藏(也稱為方法重載或方法覆蓋)是指在派生類中重新定義與基類中名稱相同但參數列表不同的方法。這樣,當使用派生類對象調用該方法時,將執行派生類中的版本,而不是基類中的版本。請注意,這里的方法隱藏與繼承無關,而是與重載有關。

以下是一個 C# 示例,演示了如何在派生類中實現方法隱藏:

using System;

// 基類
public class BaseClass
{
    public void PrintMessage(string message)
    {
        Console.WriteLine("Base Class: " + message);
    }
}

// 派生類
public class DerivedClass : BaseClass
{
    // 方法隱藏:重新定義基類的 PrintMessage 方法,參數列表不同
    public void PrintMessage(int number)
    {
        Console.WriteLine("Derived Class: Message is " + number);
    }
}

public class Program
{
    public static void Main()
    {
        BaseClass baseObj = new DerivedClass();
        baseObj.PrintMessage("Hello, World!"); // 輸出:Base Class: Hello, World!

        DerivedClass derivedObj = new DerivedClass();
        derivedObj.PrintMessage(42); // 輸出:Derived Class: Message is 42
    }
}

在這個示例中,DerivedClass 重載了 BaseClass 中的 PrintMessage 方法,使其接受一個整數參數。當我們使用 BaseClass 對象調用 PrintMessage 方法時,將執行基類中的版本。但是,當我們使用 DerivedClass 對象調用 PrintMessage 方法時,將執行派生類中的版本。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女