继承的概念及定义
继承机制是面向对象程序设计是代码可以复用的重要手段,它允许程序员在保持原有类特性的基础上进行扩展,增加功能,这样产生的类称为派生类。继承呈现了面向对象程序设计的层次结构,体现了由简单到复杂的认知过程。继承是类设计层次的复用,可以解决程序中代码的冗余,继承后基类的成员都会变成派生类的一部分。
#include <iostream>
#include <string>
using namespace std;
class Person
{
public:
void Print()
{
cout << "name" << _name << endl;
cout << "age" << _age << endl;
}
private:
string _name = "Bob";
int _age = 30;
};
class Student : public Person
{
private:
int _id = 100;
};
int main()
{
Student s;
s.Print();
return 0;
}
继承定义格式为:
不同继承方式
1、基类private成员在派生类中无论以什么方式继承都是不可见的。这里的不可见是指基类的私有成员还是被继承到了派生类对象中,但是语法上限制派生类对象不管在类里面还是类外面都不能去访问它。
2、 基类private成员在派生类中是不能被访问,如果基类成员不想在类外直接被访问,但需要在派生类中能访问,就定义为protected。可以看出保护成员限定符是因继承才出现的。继承的时候最好将成员变量设置成protected,这样即可以在子类中使用,又可以保证父类的封装
3、基类的私有成员在子类都是不可见。基类的其他成员在子类的访问方式为 Min(成员在基类的访问限定符,继承方式),public > protected > private。
4、使用关键