C++深度解析 进阶面向对象(下)(13)
类之间的基本关系
继承
从已存在类细分出来的类和原类之间具有继承关系(is-a:就是)。(东北虎 is a 老虎)
继承的类(子类)拥有原类(父类)的所有属性和行为。
组合
一些类的存在必须依赖于其他的类,这种关系叫组合。(电脑类包含内存类,主板类,硬盘类,CPU类)
组合的类在某一个局部上由其他的类组成。
类的表示法:
改进1:
改进2:(用冒号 “:” 来表达继承 )
示例程序:
#include <stdio.h>
struct Biology {
bool living;
};
struct Animal : Biology {
bool movable;
void findFood() { }
};
struct Plant : Biology {
bool growable;
};
struct Beast : Animal {
void sleep();
};
struct Human : Animal {
void sleep();
void work();
};
int main()
{
return 0;
}
小结:
类之间可以存在继承关系或者组合关系。
继承关系中,子类拥有父类的一切属性和行为。
组合关系是类之间整体和部分的关系。