软考中级软件设计师--5面向对象基础

面向对象

参考

  • https://www.yuque.com/saodai/ss8tp9
  • B站视频
  1. 面向对象基本概念
    1. 如何识别是面向对象:对象 + 分类 + 继承 + 通过消息的通信
    2. 类:定义了一组大体上相似的对象,是一组对象的抽象
    3. 类分为三种
      1. 实体类:表示显示世界中的真实实体,如人物等
      2. 接口类(边界类):为用户提供一种与系统合作交互的方式,例如 二维码、条形码等
      3. 控制类:用来控制活动流,充当协调者
    4. 对象:是基本的运行时实体,一个对象中既有属性又有行为(作用于数据的操作),一个对象通常可由对象名、属性、方法组成
    5. 消息:是对象之间通信的一种构造
    6. 重载:是在同一个位置上一系列 方法名相同,但是形参类型或者个数不同的方法
    7. 封装:是一种信息隐蔽技术,目的是使对象的使用者和生产者分离,使对象的定义和实现分开
    8. 继承:是父类和子类之间共享数据和方法的机制,一个父类可以有多个子类,这些子类都是父类的特例,父类描述了子类的公共属性和方法
    9. 一个子类有一个父类叫单重继承,一个子类有多个父类叫多重继承,多重继承可能导致子类中存在二义性的成员
    10. 覆盖:一个继承关系中,子类以更具体的方式实现从父类继承的方法,称为覆盖或者重写
    11. 多态:收到消息是对象要予以响应,不同的对象收到同一个消息可以产生完全不同的结果,这个现象称为多态,
    12. 多态的实现受继承支持,利用继承的层次关系,将具有通用功能的消息放在高层次,将不同的实现放在低层次,这些低层次生成的对象能够给消息不同的响应
    13. 多态的四类形式:
      1. 通用多态:参数多态(应用最广泛)、包含多态(常见的例子:子类型化)
      2. 特定多态:过载多态(同一个名字在不同的上下文所代表含义不同)、强制多态
  2. 绑定就是一个方法的调用与调用这个方法的类连接在一起的过程,主要分为静态绑定和动态绑定
    1. 静态绑定,就是在程序运行前,编译阶段就能够确定方法由谁调用
    2. 动态绑定,在运行时根据具体的对象类型进行绑定,动态绑定支持继承和多态
  3. 面向对象设计原则
    1. 单一职责原则:一个类仅有一个引起他变化的原因,一个类只做一种类型责任
    2. 开放-封闭原则:软件实体应该是可扩展的(开放),但是不可修改(封闭)
    3. 里式替换原则:子类必须要能够完全替代父类
    4. 依赖倒置原则:抽象不应该依赖于细节,细节应该依赖于抽象;高层模块不应依赖于低层模块,二者都应该依赖于抽象
    5. 接口分离原则:接口属于客户,不属于它所在的类层次结构,抽象级别不应有对细节的依赖
    6. 共同封闭原则:一个变化如果对一个包产生影响,则将对该包中的所有类产生影响,而对于其他包不产生影响
    7. 共同重用原则:如果重用包中的一个类,那么就要重用包中的所有类
  4. 面向对象分析
    1. 面向对象分析的目的:为了获得对应用问题的理解
    2. 面向对象分析的五个活动:认定对象 – 组织对象 – 描述对象间的相互作用 – 确定对象的操作 – 定义对象的内部信息
    3. 认定对象:用来定义问题域,以自然存在的 名词作为一个对象
    4. 定义领域模型是面向对象分析的关键步骤之一,它按照对象分类的角度来创建对象领域的描述,包括定义概念、属性和重要的关联,其结果用类图来组织
  5. 面向对象设计
    1. 基于面向对象分析的结果,将分析结果,转化为设计模型,定义系统构造蓝图
    2. 面向对象设计:获得对应问题的解决方案,实现系统,关注技术及实现层面的细节
    3. 面向对象设计的五个活动:识别类及对象 – 定义属性 – 定义服务 – 识别关系 – 识别包
  6. 面向对象程序设计
    1. 实质是选用一种面向对象语言,采用 对象、类等相关概念所进行的程序设计
  7. 面向对象测试
    1. 面向对象测试的四个层次:算法层 – 类层 – 模板层 – 系统层

你可能感兴趣的:(软考准备,软考,软件设计师)