C#的继承(Inheritance)是什么?如何创建子类和父类?

来源:这里教程网 时间:2026-02-21 17:31:33 作者:

继承是面向对象编程中的核心概念之一,在C#中,它允许一个类(子类)获取另一个类(父类)的字段、方法和属性。通过继承,可以实现代码重用,提升程序的可维护性和扩展性。

父类和子类的基本概念

父类(也叫基类)是被其他类继承的类,包含共用的功能或数据。子类(也叫派生类)是从父类继承而来的类,可以在继承的基础上添加新的成员或修改已有行为。

例如:

假设有一个“动物”类,它具有“名字”和“发出声音”的能力。狗和猫都可以看作是动物的一种,因此可以把“狗”和“猫”定义为“动物”的子类。

如何在C#中实现继承

在C#中使用冒号 : 来表示一个类继承自另一个类。

语法示例:

public class Animal
{
   public string Name { get; set; }

   public virtual void MakeSound()
   {
      Console.WriteLine("动物发出声音");
   }
}

public class Dog : Animal
{
   public override void MakeSound()
   {
      Console.WriteLine("汪汪!");
   }
}

在这个例子中:

Animal 是父类。 Dog 是子类,继承自 Animal。 Dog 类继承了 Name 属性,并重写了 MakeSound 方法以提供自己的实现。

关键点说明

virtual 和 override:

父类中想让子类重写的方法应标记为 virtual 子类中使用 override 关键字来提供新的实现。

构造函数的继承:

子类不会自动继承父类的构造函数,但可以通过 : base() 调用父类构造函数。

示例:

public class Animal
{
   public Animal(string name)
   {
      Name = name;
   }
   public string Name { get; set; }
}

public class Dog : Animal
{
   public Dog(string name) : base(name)
   {
      // 调用父类构造函数
   }
}

注意事项

C# 不支持多重继承(一个类不能继承多个类),但可以通过接口实现类似功能。 所有类默认继承自 object 类,这是 C# 类体系的根类。 可以使用 protected 成员让子类访问父类的特定字段或方法,但外部类无法访问。

基本上就这些。继承让代码更清晰、更有组织,合理使用能大幅提升开发效率。

相关推荐

热文推荐