UML
参考链接:
UML简介:https://www.cnblogs.com/hongguang-kim/p/5694708.html
类图:https://www.cnblogs.com/hongguang-kim/p/5698710.html
用例图:https://www.cnblogs.com/hongguang-kim/p/5694989.html
顺序图:https://www.cnblogs.com/hongguang-kim/p/5698824.html
状态图:https://www.cnblogs.com/hongguang-kim/p/5698858.html
UML-Unified Model Language 统一建模语言,又称标准建模语言。是用来对软件密集系统进行可视化建模的一种语言。
功能模型
对象模型
动态模型
UML中的关系是面向对象关系。如果不以面向对象的思维会感觉到很多关系是一致的。
-表示私有,#表示保护,+表示公有;
组合关系(Composition):
整体和部分是同生共死的关系,一同创建一同销毁。也叫强关系;
例如头和嘴的关系;
聚合关系(Aggregation):
整体与部分的关系。但是成员对象可以相对于整体对象独立存在。聚合是可替换的。
例如汽车和引擎的关系;
关联关系(Association):
关联关系用来实现连接有关联的对象所对应的类,即将一个类的对象作为另一个类的属性。
关联关系可以是单向的也可以是双向的。双向的符号是没有方向标的,只是一条直线。
泛化关系(Generalization):
继承(extends)关系,父类与子类的关系。
例如student和teacher都是person的子类,他们有共同的特征name和age。
当然也各自有独立的特征,study和teach。
继承了父类的子类可以直接使用父类的方法或属性。
实现关系(Realization):
类实现了接口,当多个类有类似的行为方式时,我们通常会适用接口。
ship和car都有move的特征,且他们都属于交通工具vehicle。那么就可以使用接口实现的方式去设计。
依赖关系(Dependency):
是一个使用关系,特定事物的改变可能会影响到使用该事物的其他事物。
简单来说就是在一个类中通过另一个类来调用其方法。
例如driver使用了car的move方法。Driver是依赖于car才能做driver的职责。但是很明显driver是一个整体,car也是一个整体。不是整体与部分的关系。