简单来说,继承就是让一个类可以直接使用另一个类里面的成员。
比如我们有一个**"动物"** 类,里面有动物都会吃饭、睡觉这些方法。然后我们再创建**"狗"**类,如果不使用继承,就得把吃饭、睡觉重新写一遍,比较麻烦。
这时候就可以让**"狗类"继承"动物类"**。
cs
class Animal
{
public void Eat()
{
Console.WriteLine("吃饭");
}
}
class Dog : Animal
{
public void Bark()
{
Console.WriteLine("汪汪叫");
}
}
这里的 "Dog : Animal" 就表示Dog继承Animal 。继承以后,Dog不仅可以使用自己的 "Bark()" 方法,还可以直接使用Animal里面的 "Eat()" 方法。
cs
Dog dog = new Dog();
dog.Eat();
dog.Bark();
运行以后就会输出:
吃饭
汪汪叫
可以把继承理解成**"儿子可以使用老爸的一些东西"**。父类里面已经写好的功能,子类拿过来直接用,不需要重复写。
当然,继承不只是为了少写代码,它还可以让程序结构更加清晰 。比如我们可以定义一个"员工" 父类,然后让"**程序员""设计师""经理"**等类继承员工。大家都有姓名、工资等共同属性,但是每个人又可以拥有自己特殊的方法。
需要注意的是,C# 中一个类只能直接继承一个父类,但可以实现多个接口。
总的来说,继承就是把相同的东西放到父类里面,不同的东西放到子类里面。这样代码更加方便管理,也能减少重复代码。刚开始学的时候我们不用想得太复杂,先记住一句话:子类继承父类,父类有什么,子类就可以在符合访问权限的情况下使用什么。