C++第十讲:继承
1.什么是继承
继承是面向对象程序设计使代码可以复用的重要手段,它允许我们在保持原有类特性的基础上进行拓展,增加方法(成员函数)和属性(成员变量),这样产生新的类,称为派生类:
//两个类中都有的变量:
class Person
{
public:
void identity()
{
cout << "void identity()" << _name << endl;
}
protected:
string _name = "张三";
string _address;
string _tel;
int _age = 18;
};
//继承的使用
//使用继承了之后,就不需要重复定义了
class Student : public Person
{
public:
void study()
{
// ...
}
protected:
int _stuid;
};
class Teacher : public Person
{
public:
void teaching()
{
//...
}
protected:
string title;
};
2.继承的使用
2.1定义格式
2.2继承基类成员访问访问方式的变化
我们知道,访问限定符和继承方式都有三种,所以这里就存在了9中组合方式:
下面我们要详细介绍一下关于继承的知识点:
1.基类private成员不管是以什么样的方式继承都是不可见的,这里的指的是在子类中不可用,但是物理上还是继承到了子类中,只是语法上限制了无论是在类外还是在类内都无法进行访问:
2.protected成员与private成员的不同在这里进行了体现:
protected成员不可以在类外进行访问,但是可以在子类中进行访问: