面向对象是三个特征:封装、继承、多态

封装:任何形式的隐藏或参数化的行为都可以认为是封装。从语法上来说,类的封装体现在字段的私有化,类的外部不能访问。

例如:int a(a隐藏了所有整数)    Animal a(a隐藏了所有动物)   Dog d(d隐藏了所有继承了Animal的所有类型的实例)

继承:子类是重写基类的虚成员,子类可以替换基类,以基类身份声明的变量可以在子类身上得到实现

多态:允许将子类类型的指针赋值给父类类型的指针。
实现多态的两种方式:覆盖,重载。
覆盖:是指子类重新定义父类的虚函数的做法。
重载:是指允许存在多个同名函数,而这函数的参数列表不同(或参数个数不同,或许参数类型不同,或许顺序不同,又或者都不同)。

原文地址:https://www.cnblogs.com/Tianxf815/p/8807245.html