C# 继承学习笔记
什么是继承
继承是一种面向对象编程中的机制,它允许一个类(子类)继承另外一个类(父类)的属性和方法。子类可以重复使用父类的代码并添加自己的扩展,而不必再从头开始编写新的代码。
如何实现继承
在 C# 中,我们使用 :
运算符来表示继承关系。语法如下:
csharpCopy Codeclass ChildClass : ParentClass
{
// 子类的代码
}
这里 ChildClass
是子类,ParentClass
是父类。子类中可以直接使用父类的属性和方法,也可以通过 override
关键字来重写父类的方法。
实例演示
下面以一个简单的示例来演示继承的用法。
csharpCopy Codeusing System;
// 父类
class Person
{
public string name;
public int age;
public void PrintInfo()
{
Console.WriteLine("Name: {0}", name);
Console.WriteLine("Age: {0}", age);
}
}
// 子类
class Student : Person
{
public float score;
public void Study()
{
Console.WriteLine("{0} is studying, his/her score is {1}.", name, score);
}
public override void PrintInfo()
{
Console.WriteLine("Name: {0}", name);
Console.WriteLine("Age: {0}", age);
Console.WriteLine("Score: {0}", score);
}
}
// 测试
class Test
{
static void Main()
{
Student stu = new Student();
stu.name = "Tom";
stu.age = 18;
stu.score = 90.0f;
stu.PrintInfo(); // 调用子类的 PrintInfo() 方法
stu.Study(); // 调用子类的 Study() 方法
}
}
输出结果:
Copy CodeName: Tom
Age: 18
Score: 90
Tom is studying, his/her score is 90.
上面的代码中,Person
是父类,Student
是子类。子类 Student
继承了父类 Person
的 name
和 age
属性,并添加了自己的属性 score
和方法 Study()
。同时,子类重写了父类的 PrintInfo()
方法以便打印自己的信息。
在测试代码中,我们创建了一个 Student
类型的对象 stu
,并设置了其属性为 name=Tom、age=18、score=90。然后分别调用了 PrintInfo()
和 Study()
方法来展示继承的效果。
总结
通过继承,我们可以实现代码的复用和扩展,从而提高程序的可维护性和可扩展性。需要注意的是,继承应该被慎重使用,因为它可能会导致类之间的耦合度过高,从而影响程序的性能和可读性。