1.面向对象三大特性
a.多态
同一消息不同对象回复不同结果产生多态。
通用多态 | 特定多态 |
---|---|
参数多态、包含多态 | 过载多态、强制多态 |
b.封***r> 信息隐蔽技术
c.继承
不同类共享属性
2.类和对象
- 类是对象的抽象, 对象是类的实例。
- 抽象类不能实例化,抽象方法无须实现。
对象:一组属性及专用操作封装。
类:一组具有相同属性和方法的对象抽象。
3.UML
a.通用机制
- 包:组织模块
- 类:
- 接口:提供功能行为
- 构件:从一组接口提供实现的物理、可替换部分。
b.事务
- 结构事务:名词,描述概念或物理元素
- 行为事务:动词,描述跨越时间和空间的行为。
- 分组事务:组织部分,模型分解为盒子
- 注释事务:解释部分。
c.用例关系
- 包含:有公共行为(必须行为)
- 扩展:不是必须行为
- 泛华:父类和子类(共同特性)结构相同
d.uml视图
- 结构型视图(静态)
类图 对象图 包图 组合结构图 构件图 部署图 制品图 - 行为型视图(动态)
用例图 顺序图 通信图 定时图 状态图 活动图 交互橄榄图
4.面向对象原则
- 单一职责:将不同职责分开
- 开闭原则:可扩展,但是不可修改。
- 替换原则:尽量设计抽象类
- 依赖倒置:依赖接口和抽象类
- 接口分离:继承多个接口
- 组合重用:组合实现
- 迪米特:一个对象对另一个对象有最少的了解
5.类
a.分类
- 边界类:外部环境和系统交互
- 实体类:存储和关系系统信息
- 控制类:用例的控制
b.关系
- 依赖:一个改变引起另一个改变
- 泛化:继承
- 聚合:可分开
- 组合:不可分开
- 实现:接口
c.多重度
- 0…* 1
- 一个公司负责多个项目 公司和项目之间是1…*
6.设计模式
- 适配器:一个类的接口转为客户需要的接口。
- 原型:指定创建对象种类,通过负责原型创建新对象。
- 迭代器:聚合对象中各个元素,而又不暴露对象内部.
- 观察者:当一个对象发生改变,通知其他更新。
- 单例模式:一个类只有一个实例
- 组合模式:组合多个对象形成树形结构
- 外观模式:统一接口访问多个子系统
- 代理模式:提供代理控制访问
- 策略模式:封装起来,相互替换
- 享元模式:共享对象
- 装饰模式:动态给对象增加功能
7.时序图
三种消息
- 同步:等待对方应答后,再操作
- 异步:
- 返回: