十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
C++中对于继承分为单一继承和多重集成.只有一个基类的叫单一继承,拥有多个基类的叫多重继承,
而在java中extends 只可以有一个,相对于implement可以有多个。
java中的子类,在c++中又称为派生类
在c++中当你声明一个派生类时,你可以通过在类的名字后面加一个冒号(:)来表示它是从哪个类派生出来的
例:
Class 派生类:public 父类
注意: public代表的是派生的类型,也可以声明为私有(private),后面跟基类的名字
多重继承
创新互联专业为企业提供互助网站建设、互助做网站、互助网站设计、互助网站制作等企业网站建设、网页设计与制作、互助企业网站模板建站服务,十年互助做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。c++中有两种继承,单一继承和多重继承。只有一个基类的叫单一继承,拥有多个基类的叫多重继承
例如(继承两个类的写法)
class Son:public Father,public Mother
另外,多重继承允许分别设置基类的派生权限。
例如:
class Son:public Father,private Mother
这样子类Son就是从Father类公有派生,从Mother类私有派生。
这样从Father类集成来的所有成员在子类中权限保持不变,也就是说原来是公有的还是公有,原来是私有的还是私有。
而Mother类的所有成员在Son中就变成私有,更加精准的说法是,Mother类的公有成员和保护成员被Son类继承后变成了私有,而私有成员则变成不可访问的成员
继承的构造和析构
#include
using namespace std;
class father
{
public:
father(){cout<<"构造父类对象
";}
~father(){cout<<"析构父类对象
";}
};
class son:public father
{
public:
son(){cout<<"构造子类对象
";}
~son(){cout<<"析构子类对象
";}
};
int main()
{
son Jack;
return 0;
}
根据输出可以看出先构造的是父类对象,而析构时是先析构子类。