面向对象的基本概念

来自姬鸿昌的知识库
跳到导航 跳到搜索

https://www.bilibili.com/video/BV1hg411V7Bm?p=84

1)面向对象的基本概念

面向对象=对象+分类+继承+通过消息的通信

面向对象的基本概念.png

对象

程序系统中基本运行的实体,包括数据和数据的操作

一个对象把属性和行为封装成一个整体,实现生产者与使用者的分离。

一个对象通常可由对象名、属性和方法(操作)三部分组成。


定义了一组大体上相似的对象。

类是对象的抽象对象是类的具体化是类的实例

特殊类是一般类的子类一般类是特殊类的父类


继承

父类和子类之间共享数据和方法的机制。

一个父类可以有多个子类,一个子类可以继承其父类(或祖先类)中的属性和方法

单重继承:从一个父类A得到继承

多重继承:一个子类有两个或更多个父类


重置

是一种动态绑定机制,使得子类在继承父类的前提下,用适合自己要求的实现去置换父类中的相应实现。(覆盖)


消息

对象之间的通信构造。


消息传递

当一个消息发送给某个对象时,包含要求接收对象去执行的某些活动的信息。

接收到信息的对象经过解释,然后予以响应。

在收到消息时,对象要予以响应。

不同的对象收到同一消息可以产生完全不同的结果,这一现象称为多态。

不同对象对同一消息的不同的响应。

通用多态:参数多态和包含多态

特定多态:过载多态和强制多态

通用多态对工作的类型不加限制,允许对不同类型的值执行相同的代码;

特定多态只对有限数量的类型有效,而且对不同类型的值可能要执行不同的代码。


过载多态

同一个名(操作符、函数名)在不同的上下文中有不同的类型。

典型的例子是运算符重载和函数重载,属于静态多态。


2)面向对象的基本过程

面向对象的基本过程.png


面向对象分析(OOA)

  • 认定对象(名词)
  • 组织对象(抽象成类)
  • 对象间的相互作用
  • 基于对象的操作

完成对所解问题的分析,确定待开发软件系统要做什么,建立系统模型。

包括认定组织对象,描述对象间的相互作用,定义对象的操作和内部信息。


面向对象设计(OOD)

  • 识别类及对象
  • 定义属性
  • 定义服务
  • 识别关系
  • 识别包

将OOA所创建的分析模型转化为设计模型,其目标是定义系统构造蓝图。


面向对象程序设计(OOP)

  • 程序设计范型
  • 选择一种OOPL

是采用程序设计语言,将设计模型转化为特定环境中的系统,即实现系统。


面向对象测试(OOT)

  • 算法层
  • 类层
  • 模板层
  • 系统层

对面向对象系统进行测试,查出系统错误。

主要包括算法层、类层、模板层、系统层。