0
点赞
收藏
分享

微信扫一扫

6.面向对象

烟中雯城 2022-05-03 阅读 59
uml

面向对象技术

12’ 占比最高

1.面向对象基本概念

对象属性(数据)+方法(操作)+对象ID(唯一标识)
实体类、控制类、边界类
继承与泛化复用机制
封装隐藏对象属性和实现细节,仅对外公开接口
多态不同对象收到同样的消息产生不同的结果
接口一种特殊的类,他只有方法定义没有实现
重载一个类可以有多个同名而参数类型不同的方法
模板类用模板的形式定义
消息和消息通信消息是异步通信的

面向对象七大原则

  • 单一职责原则:设计目的单一的类
  • 开放-封闭原则:对扩展开放,对修改封闭
  • 李氏(Liskov)替换原则:子类可以替换父类
  • 依赖倒置原则:要依赖于抽象,而不是具体实现;针对接口编程,不要针对实现编程
  • 接口隔离原则:使用多个专门的接口比使用单一的总接口要好
  • 组合重用原则:要尽量使用组合,而不是继承关系达到重用目的
  • 迪米特原则(最少知识法则):一个对象应当对其对象有尽可能少的了解

2.UML

image-20220420200318821

2.1用例图***

  • 包含:能够提取公共用例
  • 扩展:分为一个基本用例和多个扩展用例(分支)
  • 泛化:子用例继承了父用例所有的结构、行为和关系
image-20220422131039667

2.2类图与对象图***

类图:描述一组类、接口、协作和他们之间的关系。静态视图

对象图:描述一组对象及他们之间的关系。静态快照

  • 多重度:一个集合中的对象对应另一个集合中的对象,一对一,多对一,多对多

image-20220420231519584

关系类型连线箭头
关联关系AB直线
依赖关系AB虚线实心
泛化子类父类直线空心
聚合部分类整体类直线菱形实心
组合–共存亡部分整体直线菱形空心
实现AB虚线空心

2.3顺序图

也称序列图SD(Sequence Diagram),是一种交互图,专注于动态视图,强调消息的时间次序。

image-20220422132214532

2.4状态图

由状态、转移、事件和活动组成

image-20220422132514522

2.5活动图

动态图,有控制流和数据流,按角色划分

image-20220422132235348

image-20220422132309321

2.6通信图

交互图,强调时序,对象之间的组织结构

image-20220422132613107

2.7构件图

image-20220422132639618

2.8部署图

image-20220422132700528

3.设计模式 ***

image-20220421191053326

3.1创建型模式

  • 工厂方法–factory method–动态生产对象
  • 抽象工厂–abstract factory–生产成系列对象
  • 原型–prototype–克隆对象
  • 单例–singleton–单个实例
  • 构建器–builder–复杂对象构造
image-20220421192403500
3.1.1工厂模式–Creator

定义接口,实例化子类

image-20220421194116103
3.1.2抽象工厂–abstract

提供一个接口,创建一系列相关联或相互依赖的对象

image-20220421194236185
3.1.3原型模式–Protocoltype

image-20220421195415113

3.1.4单例模式–singleton

一个类只有一个实例

image-20220421200457986
3.1.5生成器模式–builder
image-20220421200546902

3.2结构型模式

  • 适配器–adapter–转换接口
  • 桥接–bridge–继承树拆分
  • 组合–composite–树形目录结构
  • 装饰–decorator–附加职责
  • 外观–facade–对外统一接口
  • 享元–flyweight–文章共享文字对象
  • 代理–Proxy
image-20220421192954123

3.3行为型模式

  • 职责链–chain of responsibility–传递职责
  • 命令–command–日志记录,可撤销
  • 解释器–interpreter–虚拟机的机制
  • 迭代器–iterator–数据库数据集
  • 中介者–mediator–不直接引用

image-20220421193355586

  • 备忘录–memento
  • 观察者–observer–联动
  • 状态–state–状态变成类
  • 策略–strategy–多方案切换
  • 模板方法–template method
  • 访问者 visitor
image-20220421193756010

模板方法–template method

  • 访问者 visitor
image-20220421193756010
举报

相关推荐

0 条评论