C#怎么实现方法的重写和隐藏
在C#中,方法的重写和隐藏是通过继承和访问修饰符来实现的。
- 方法的重写(Override):在子类中重写父类的方法,可以使用override关键字。重写方法必须和父类方法有相同的名称、参数列表和返回类型。示例如下:
class BaseClass
{
public virtual void Print()
{
Console.WriteLine("Base Class");
}
}
class DerivedClass : BaseClass
{
public override void Print()
{
Console.WriteLine("Derived Class");
}
}
BaseClass baseObj = new DerivedClass(); // 创建子类对象,调用子类的Print方法
baseObj.Print(); // 输出:"Derived Class"
- 方法的隐藏(Hide):在子类中隐藏父类的方法,可以使用new关键字。隐藏方法不需要和父类方法有相同的名称、参数列表和返回类型,但最好保持一致以避免混淆。示例如下:
class BaseClass
{
public void Print()
{
Console.WriteLine("Base Class");
}
}
class DerivedClass : BaseClass
{
public new void Print()
{
Console.WriteLine("Derived Class");
}
}
BaseClass baseObj = new DerivedClass(); // 创建子类对象,调用父类的Print方法
baseObj.Print(); // 输出:"Base Class"
通过这两种方式,可以实现方法的重写和隐藏,使得子类可以对父类方法进行定制化的处理。
相关问答