让某种类型的对象获得另一个类型对象的属性和方法
它可以使用现有类的所有功能,并在无须重新编写原来的类的前提下对这些功能进行扩展
方式:实现继承、接口继承、可视继承
C++ Primer Plus中例子:将人定义为一个抽象类,拥有姓名性别年龄等公共属性,吃饭睡觉等公共方法,在定义一个具体的人时,就可以继承这个抽象类,既保留了公共属性和方法,也可以在此基础上扩展跳舞唱歌等特有方法。
将数据和代码捆绑在一起,避免外界干扰和不确定性访问
把客观事物封装为抽象的类,并且类可以把自己的数据和方法只让可信的类或对象操作,对不可信的进行信息隐藏