class c#怎樣實(shí)現(xiàn)繼承

c#
小樊
81
2024-10-19 10:51:01

在C#中,實(shí)現(xiàn)繼承主要通過使用冒號(hào)(:)和關(guān)鍵字extends(在C# 2.0及更早版本中)或override(在C# 3.0及更高版本中)來實(shí)現(xiàn)。以下是兩種實(shí)現(xiàn)繼承的方法:

使用extends關(guān)鍵字(適用于C# 2.0及更早版本)

在C# 2.0及更早版本中,只能繼承自類(class),不能繼承自接口(interface)。繼承的語(yǔ)法如下:

// 基類
public class BaseClass
{
    public void Method()
    {
        Console.WriteLine("Base class method.");
    }
}

// 派生類
public class DerivedClass : BaseClass
{
    // 派生類可以訪問基類的成員
    public void Method()
    {
        base.Method(); // 調(diào)用基類的Method方法
        Console.WriteLine("Derived class method.");
    }
}

class Program
{
    static void Main(string[] args)
    {
        DerivedClass obj = new DerivedClass();
        obj.Method(); // 輸出:Base class method. Derived class method.
    }
}

使用override關(guān)鍵字(適用于C# 3.0及更高版本)

從C# 3.0開始,可以使用override關(guān)鍵字來重寫基類的方法。此外,C# 3.0及更高版本還支持繼承接口。以下是使用override關(guān)鍵字的示例:

// 基類
public class BaseClass
{
    public virtual void Method()
    {
        Console.WriteLine("Base class method.");
    }
}

// 接口
public interface IInterface
{
    void Method();
}

// 派生類
public class DerivedClass : BaseClass, IInterface
{
    // 使用override關(guān)鍵字重寫基類的方法
    public override void Method()
    {
        base.Method(); // 調(diào)用基類的Method方法
        Console.WriteLine("Derived class method.");
    }
}

class Program
{
    static void Main(string[] args)
    {
        DerivedClass obj = new DerivedClass();
        obj.Method(); // 輸出:Base class method. Derived class method.
    }
}

在這個(gè)示例中,DerivedClass繼承了BaseClass并實(shí)現(xiàn)了IInterface接口。通過使用override關(guān)鍵字,DerivedClass重寫了BaseClassMethod方法。

0