继承与派生
注意是“空心三角箭头”,从子类【派生的类】指向父类【被继承的类】
父类,也称为“基类”
除了“构造函数”和“析构函数”,
父类的所有成员函数,以及数据成员,都会被子类继承!
示例 :为了防止文章比较简明,我就写了继承有关的代码
//定义一个儿子类,从Father类继承下来的
class Son : public Father {
全部代码
#include <iostream>
#include <string>
using namespace std;
class Father {
public:
Father() {
name = "无名";
age = 0;
}
Father(const char* name, int age) {
this->name = name;
this->age = age;
}
string get_name()const {
return name;
}
int get_age()const {
return age;
}
private:
string name;
int age;
};
//定义一个儿子类,从Father类继承下来的
class Son : public Father {
public:
Son(const char* name, int age) : Father(name, age) {
}
};
int main(void) {
//年龄是瞎写的,请不要深究
Father f("王健林", 55);
Son s("王思聪", 33);
cout << f.get_name() << "的年龄是:" << f.get_age() << endl;
cout << s.get_name() << "的年龄是:" << s.get_age() << endl;
return 0;
}
子类, 一般会添加自己的数据成员/成员函数,
或者, 重新定义从父类继承的方法!!! 子类对象就会调用自己重新定义的方法, 不会调用父类的同名方法