1.继承 封装 多态 是c++三个主要特征
2.继承,就是类的继承,子类继承父类,可以省去很多公共的代码,只需要写自己独有的代码就可以了。
3.继承的语法 class 子类名:继承方式 父类名
4.案例——做一个编程语言视频网站,有CPP、JAVA、PYTHON三个界面。其中网站的头部,底部和列表部分是一致的,只有主体部分是不一致的。
如果这里不用继承,那么这三个界面就要将网站的头部、底部、列表部分都写出来,很繁琐。?
#include<iostream>
using namespace std;
class base //公共类
{
public:
void top() //公共部分之顶部
{
cout<<"这是网站的顶部"<<endl;
}
void down() //公共部分之底部
{
cout<<"这是网站的底部"<<endl;
}
void left() //公共部分之列表
{
cout<<"这是网站的列表"<<endl;
}
};
class cpp:public base //c++界面 子类公共继承父类
{
public:
void onlycpp()
{
cout<<"这是专属于c++的部分"<<endl;
}
};
class python:public base //python界面 子类公共继承父类
{
public:
void onlypython()
{
cout<<"这是专属于python的部分"<<endl;
}
};
class java:public base //java界面 子类公共继承父类
{
public:
void onlyjava()
{
cout<<"这是专属于Java的部分"<<endl;
}
};
void test01()
{
//c++的界面
cpp cp;
cp.down();
cp.left();
cp.top();
cp.onlycpp();
cout<<"_______________________________________________"<<endl;
//python的界面
python py;
py.down();
py.left();
py.top();
py.onlypython();
cout<<"_______________________________________________"<<endl;
//java的界面
java ja;
ja.down();
ja.left();
ja.top();
ja.onlyjava();
cout<<"_______________________________________________"<<endl;
//这样三个语言的网站就成功输出了!
}
int main()
{
test01();
system("pause");
return 0;
}
最后输出的效果如下:
?
|