📜  c# base vs this - C# (1)

📅  最后修改于: 2023-12-03 15:13:48.599000             🧑  作者: Mango

C# 中的 base 和 this 关键字

在 C# 中,base 和 this 关键字具有特定的用途。在本文中,我们将介绍这两个关键字的作用和用法。

base 关键字

base 关键字是用于在派生类中访问基类成员的。在派生类中,我们可以使用 base 关键字来显式地调用基类的构造函数或成员。下面是一个例子:

public class BaseClass
{
    public int Value { get; set; }

    public BaseClass(int value)
    {
        this.Value = value;
        Console.WriteLine("BaseClass constructor called with value: " + value);
    }

    public void Method()
    {
        Console.WriteLine("BaseClass method called");
    }
}

public class DerivedClass : BaseClass
{
    public DerivedClass(int value) : base(value)
    {
        Console.WriteLine("DerivedClass constructor called with value: " + value);
    }

    public void Method()
    {
        base.Method();
        Console.WriteLine("DerivedClass method called");
    }
}

在上面的代码中,我们定义了一个基类 BaseClass 和一个派生类 DerivedClass。在派生类 DerivedClass 的构造函数中,我们使用 base 关键字来调用基类 BaseClass 的构造函数。

在派生类 DerivedClass 的方法中,我们使用 base 关键字来调用基类 BaseClass 的方法。

this 关键字

this 关键字是用于引用当前实例的。在 C# 中,我们经常使用 this 关键字来引用当前实例的成员。下面是一个例子:

public class MyClass
{
    private int value;

    public MyClass(int value)
    {
        this.value = value;
    }

    public void Method()
    {
        Console.WriteLine("The value is: " + this.value);
    }
}

在上面的代码中,我们定义了一个类 MyClass,并在构造函数中使用 this 关键字来引用当前实例的成员。

总结

在本文中,我们介绍了 C# 中的 basethis 关键字的用法。base 关键字用于在派生类中访问基类成员,而 this 关键字用于引用当前实例的成员。在实际开发中,我们经常使用这两个关键字来编写高效和可维护的代码。