【单继承】
继承性是面向对象程序设计中最重要的机制。这种机制提供了无限重复利用程序资源的一种途径。通过C++语言中的继承机制,可以扩充和完善旧的程序设计以适应新的需求。这样不仅可以节省程序开发的时间和资源,并且为未来程序增添了新的资源。
class Student //类Student
{ int num;
char name[30];
char sex;
public:
void display( ) // 对成员函数display的定义
{
cout <<"num: " <<num <<endl;
cout <<"name: " <<name <<endl;
cout <<"sex: " <<sex <<endl;
}
};
class Student1 //类Student1
{ int num;
char name[20];
char sex;
int age; //新增的
char addr[20]; //新增的
public:
void display( )
{
cout <<"num: " <<num <<endl;
cout <<"name: " <<name <<endl;
cout <<"sex: " <<sex <<endl;
cout <<"age: " <<age <<endl; //新增的
cout <<"address: " <<addr <<endl; //新增的
}
};
利用原来定义的类Student作为基础,再加上新的内容即可,以减少重复的工作量。 C++提供的继承机制就是为了解决这个问题。
在C++中所谓“继承”就是在一个已存在的类的基础上建立一个新的类。已存在的类称为“基类(base class)”或“父类(father class)”。新建立的类称为“派生类(derived class)”或“子类(son class)”。
class Student1: public Student//声明基类是Student,定义派生类Student1
{
private:
int age; //新增加的数据成员
string addr; //新增加的数据成员
public:
void display_1( ) //新增加的成员函数
{
cout<<"age: "<<age<<endl;
cout<<"address: "<<addr<<endl;
}
};
类A派生类B:类A为基类,类B为派生类。
在C++语言中,一个派生类可以从一个基类派生,也可以从多个基类派生。从一个基类派生的继承称为单继承;从多个基类派生的继承称为多继承。