1. 继承的简介:
继承
(加上封装和多态性)是面向对象的编程的三个主要特性
(也称为“支柱”)之一。 继承用于创建可重用、扩展和修改在其他类中定义的行为的新类。
其成员被继承的类称为“基类”
,继承这些成员的类称为“派生类”
。 派生类只能有一个直接基类。 但是,继承是可传递的。 如果 ClassB 派生出 ClassC,ClassA 派生出 ClassB,则 ClassC 会继承 ClassB 和 ClassA 中声明的成员。
2. 思考题
题目 :
老师、学生的类。
老师有名字、性别、年龄、所带班级、教的科目, 老师可以教学生学习,老师可以用电脑, 老师可以吃饭。
学生有名字、性别、年龄、所在班级,学生可以学习,还可以用电脑,还可以吃饭。
思路:
在看这道题的时候,首先先看共同的属性,可不可以抽出一个基类,然后再去继承这个基类。
1. 显而易见,我们可以定义一个Person类,具有名字、性别、年龄这些字段,还有吃饭、用电脑这两个方法。
2. 老师的类继承自Person类,只需要添加教的科目、所带的班级的字段,和教学生的方法。
3. 学生继承自Person类,只需要添加一个所在班级的字段,和学习的方法。
代码:
1. 基类
namespace 继承
{
enum gender
{
boy,
girl
}
class Person
{
public string name;
public int age;
public gender gender;
public void eat()
{
Console.WriteLine("我在吃东西");
}
public void playComputer()
{
Console.WriteLine("我在用电脑");
}
}
}
2. 老师类
namespace 继承
{
class Teacher : Person
{
public string className;
public string subjectName;
public void teach()
{
Console.WriteLine("教学生学习");
}
}
}
3. 学生类
namespace 继承
{
class Student : Person
{
public string inClassName;
public void learn()
{
Console.WriteLine("学生正在学习");
}
}
}