C++OOP(object-oriented programming)

1.C++ OOP核心思想

数据抽象、继承和动态绑定(有时又被称为运行时绑定(run-time binding))。

1.1 数据抽象

可以将类的接口与实现分离

1.2 继承(inheritance)

可以定义相似的类型并对其相似关系建模。

1.3 动态绑定(dynamic binding)

可以定义相似的类型并对其相似关系建模。

当使用基类的引用(或指针)调用一个虚函数时将发生动态绑定。

2. OOP三大特性

封装、继承、多态。
image

2.1 封装

封装可以隐藏实现细节,使得代码模块化。

封装的意义:
1.将属性和行为作为一个整体
2.将属性和行为加以权限控制

2.2 继承

继承可以扩展已存在的代码模块(类);它们的目的都是为了——`代码重用`。

继承是指这样一种能力:使用现有类的所有功能,并在无需重新编写原来的类的情况下对这些功能进行扩展。
其继承的过程,就是从一般到特殊的过程。

继承的实现方式?

继承概念的实现方式有三类:实现继承、接口继承和可视继承。

1. 实现继承是指使用基类的属性和方法而无需额外编码的能力;

2. 接口继承是指仅使用属性和方法的名称、但是子类必须提供实现的能力;

3. 可视继承是指子窗体(类)使用基窗体(类)的外观和实现代码的能力。

2.3 多态

多态则是为了实现另一个目的——接口重用

多态性(polymorphisn)是允许你将父对象设置成为和一个或更多的他的子对象相等的技术,
赋值之后,父对象就可以根据当前赋值给它的子对象的特性以不同的方式运作。

简单的说,就是一句话:允许将子类类型的指针赋值给父类类型的指针。

实现方式:
覆盖:是指子类重新定义父类的虚函数的做法。

3.切记重载是面向方法的,和面向对象没关系

posted @ 2023-03-07 14:29  Panor  阅读(23)  评论(0编辑  收藏  举报