继承就是is-a;
组合就是 contain-a;
(聚合就是has-a)
比如:人有一个名字,人也有家庭住址(has-a),但是你不能说人是一个名字,人是一个家庭住址;
再比如:学生类继承自人类(is-a),学生也是人;如果A类pubilc继承于B类,那么A类对象一定是个B类对象,反之不一定成立;
假如有CPerson类,CStudent类,CTeam类;
CStudent类继承自CPerson类,CTeam类中复合;额CStudent类
构造顺序是:
CPerson->CStudent->CTeam;
析构顺序是:
CTeam->CStudent->CPerson;

网友评论