C#中继承是指使类A继承类B,类A即拥有了类B内部的所有的成员,也可以新增自己的成员。C#中的继承具有单根性即一个子类不允许继承多个父类,在子类被继承后,子类的子类也会同样拥有其父类和父类的父类的所有成员。子类内部若声明了与父类同名的成员,则子类的成员会覆盖掉父类的成员。可以利用protected修饰符来确保某个成员仅供类本身及其子类来使用。
cs
namespace ConsoleApp4
{
class Teacher
{
public string name;
public int number;
public void SpeakName()
{
Console.WriteLine(name);
}
}
//TeachingTeacher继承了Teacher
class TeachingTeacher : Teacher
{
public string subject;
public void SpeakSubject()
{
Console.WriteLine(subject);
}
}
//ChineseTeacher继承了TeachingTeacher
class ChineseTeacher : TeachingTeacher
{
public void Skill()
{
Console.WriteLine("朗诵诗歌");
}
}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("Hello, World!");
}
}
}