前言
UML作为一种面向对象的建模语言,同时是面向对象建模技术的研究成果,学习它的过程中,少不了的要先学习面向对象技术了,那么你对面向对象技术了解多少呢?
知识性总结
1.现实世界和面向对象技术的区别
2.基本原则
1.抽象
比如提起“队列”,就是很多人在排队;“柜台”就是商店结账的地方。
2.封装
对客户隐藏实现,客户只能看到接口。比如:用户知道遥控器可以操控电视机,但是具体实现原理并不向用户显示出来。
3.模块性
比如,一个餐厅系统中包括四个模块:队列,订餐点,传送,结账。
4.层次性
用一张图片来表示一下吧:
3.关系概念
1.关联
整体-部分关系(聚合),用空心菱形表示
整体-部分关系(组合),用实心菱形表示
简单的说,聚合关系中,发动机可以脱离火车单独存在,这样的话发动机和火车的关系就属于聚合的关系,一个火车对应1个或多个引擎,而一个引擎对应0个或多个火车;组合关系中列表一旦消失,结点也就不存在了,这样就属于组合关系,一个表对应0个或多个结点,而一个节点对应1个表。
2.依赖
在下列图中,Client类依赖Supplier类,即Client类的使用中会用到Supplier类。
3.泛化(继承属性和方法)
单重继承:一个子类只有一个父类
多重继承:一个子类有多个父类
后记
面向对象技术的三个特性:继承性,封装性,多态性,这三个特性其实和我们的生活紧密相连,计算机的知识可以用到我们的生活中,所以,好好学习啊!