C# 继承
C# 继承
在 C# 中,继承是一个对象自动获取其父对象的所有属性和行为的过程。通过这种方式,您可以重用、扩展或修改其他类中定义的属性和行为。
在 C# 中,继承另一个类成员的类称为派生类,其成员被继承的类称为基类。派生类是基类的特化类。
C#继承的优点
代码重用性: 现在你可以重用你的父类的成员。因此,无需再次定义该成员。
C#单级继承示例: 继承字段
当一个类继承另一个类时,称为单级继承.看一下只继承字段的单级继承的例子。
using System;
public class Employee
{
public float salary = 40000;
}
public class Programmer: Employee
{
public float bonus = 10000;
}
class TestInheritance{
public static void Main(string[] args)
{
Programmer p1 = new Programmer();
Console.WriteLine("Salary: " + p1.salary);
Console.WriteLine("Bonus: " + p1.bonus);
}
}
输出:
Salary: 40000
Bonus: 10000
在上面的例子中,Employee 是基类,Programmer 是派生类。
C# Single Level继承示例: 继承方法
让我们看看 C# 中的另一个继承示例,它只继承方法。
using System;
public class Animal
{
public void eat() { Console.WriteLine("Eating..."); }
}
public class Dog: Animal
{
public void bark() { Console.WriteLine("Barking..."); }
}
class TestInheritance2{
public static void Main(string[] args)
{
Dog d1 = new Dog();
d1.eat();
d1.bark();
}
}
输出:
C# 多级继承示例
当一个类继承另一个类,而另一个类又被另一个类进一步继承时,在C#中称为多级继承。继承是可传递的,因此最后一个派生类获取其所有基类的所有成员。
让我们看看 C# 中的多级继承示例。
using System;
public class Animal
{
public void eat() { Console.WriteLine("Eating..."); }
}
public class Dog: Animal
{
public void bark() { Console.WriteLine("Barking..."); }
}
public class BabyDog : Dog
{
public void weep() { Console.WriteLine("Weeping..."); }
}
class TestInheritance2{
public static void Main(string[] args)
{
BabyDog d1 = new BabyDog();
d1.eat();
d1.bark();
d1.weep();
}
}
输出:
Eating...
Barking...
Weeping...
注意: C# 中不支持通过类进行多继承。