OOP: Object Oriented Programming 面向对象的程序设计
面向对象的三个基本特征:封装、继承、多态
- 封装:把客观事物封装成抽象的类,并将类把自己的数据和方法对可信的类或对象访问操作,对不可信的类或对象进行信息隐藏。
- 继承:可以使用现有类的所有功能,并在无需重新编写类的情况之下对类的功能进行拓展。
通过继承创建的新类称为 "子类" / "派生类" 。
被继承的类被称为"父类" / "基类" / "超类" 。
- 多态:是一种可以将父类对象设置成为和一个或更多的它的子类对象相等的状态。赋值以后,父类对象就可以根据当前赋值给它的子类对象的特性进行相应的操作了。也就是说,允许将子类类型的指针赋值给父类类型的指针上。
实现多态的两种方法:覆盖、重载
覆盖:指子类重新定义父类虚函数的做法
重载:指允许存在多个同名函数,而这些函数的参数不同(或许参数个数不同、或许参数类型不同、或许两者都不不同)。