当前位置:   article > 正文

UML 类图、类与类之间关系_uml类图药店管理系统

uml类图药店管理系统

目录

 类图

类的表示法

画类图

接口的表示法

类与类之间关系

泛化(Generalization)关系

依赖(Dependency)

关联(Association)

聚合(Aggregation)

组合关系


 类图

  • 类图是面向对象系统建模中最常用的图。是定义其他图的基础.
  • 类图主要是用来显示系统中的类,接口以及它们之间的关系.
  • 类图包含的主要元素有类,接口和关系。
    • 其中关系有泛化关系,关联关系,依赖关系和实现关系。
    • 在类图中也可以包含注释和约束.

类的表示法

  • 类是类图的主要组件,由3部分组成:类名,属性和方法。
  • 在UML中,类用矩形来表示,顶端部分存放类的名称,中间部分存放类的属性,属性的类型及值,底部部分存放类的方法,方法的参数和返回类型.
  • 在UML可以根据际情况有选择的隐藏属性部分或方法部分或两者都隐藏
  • 在UML中,公有类型有+表示私有类型用-表示 ,保护类型用#表示
  • UML的工具开发商可以使用自已定义的符号表示不同的可见性
     

画类图

接口的表示法

  • 接口中包含方法,但不包含属性
  • 在UML中接口用一个带有名称的圆圈表示,并且通过一条实线与它的模型元素相连

  • 有时候接口也使用普通类的矩形符号表示
     
  • 实现关系

类与类之间关系

泛化(Generalization)关系

  • 在UML中,泛化关系用来表示类与类接口与接口之间的继承关系,类对接口的实现关系
  • 泛化关系有时也称为"is a kind of关系
  • 在UML中泛化关系用一条实线空心箭头有子类指向父类
  • 父类 父类实例=new 子类()
     
  • 案例:Animal类与Tiger类,Dog类的泛化关系

  • 代码表示:
  1. class Animal{}
  2. class Tiger extends Animal{}
  3. public class Test
  4. {
  5. public void test()
  6. {
  7. Animal a=new Tiger();
  8. }
  9. }

依赖(Dependency)

  • 对于两个相对独立的对象,当一个对象负责构造另一个对象的实例,或者依赖另一个对象的服务时,这两个对象之间主要体现为依赖关系。

  • 类A的实现需要引用类B,这就是依赖。这种使用关系是具有偶然性的、临时性的、非常弱的,而B类的变化会影响到A,则A与B存在依赖关系,依赖关系是弱的关联关系。

  • 依赖关系表现在局部变量,方法的参数,以及对静态方法的调用

  • 案例:比如说你要去拧螺丝,你是不是要借助(也就是依赖)螺丝刀(Screwdriver)来帮助你完成拧螺丝(screw)的工作

  • 类图:Person类与Screwdriver类的依赖关系

  • 代码表现
  1. public class Person{
  2. /** 拧螺丝 */
  3. public void screw(Screwdriver screwdriver){
  4. screwdriver.screw();
  5. }
  6. Void drive(Car &mycar){}
  7. }

关联(Association)

  • 对于两个相对独立的对象,当一个对象的实例另一个对象的一些特定实例存在固定的对应关系时,这两个对象之间为关联关系。
  • 关联关系是使用实例变量来实现
  • 案例:比如客户和订单,每个订单对应特定的客户,每个客户对应一些特定的订单;再例如公司和员工,每个公司对应一些特定的员工,每个员工对应一特定的公司
  • 公司和员工的关联关系

  • 代码表现
  1. public class Company{
  2. private Employee employee;
  3. public Employee getEmployee(){
  4. return employee;
  5. }
  6. public void setEmployee(Employee employee){
  7. this.employee=employee;
  8. }
  9. //公司运作
  10. public void run(){
  11. employee.startWorking();
  12. }
  13. }

聚合(Aggregation)

  • 当对象A被加入到对象B中,成为对象B的组成部分时,对象B和对象A之间为聚合关系。
  • 聚合是关联关系的一种,是较强的关联关系,强调的是整体与部分之间的关系
  • 整体与部分之间是可分离的,即没有了整体,局部也可单独存在
  • 与关联关系一样,聚合关系也是通过实例变量来实现这样关系的。关联关系和聚合关系来语法上是没办法区分的,从语义上才能更好的区分两者的区别。
  • 关联与聚合的区别
    • 关联关系所涉及的两个对象是处在同一个层次上的。
      • 比如人和自行车就是一种关联关系,而不是聚合关系,因为人不是由自行车组成的。
      • 聚合关系涉及的两个对象处于不平等的层次上,一个代表整体,一个代表部分。比如电脑和它的显示器、键盘、主板以及内存就是聚集关系,因为主板是电脑的组成部分。

组合关系

  • 这是一种比聚合更强的关系,又称强聚合整体的生命周期即为组成部分的生命周期
  • 比如公司不存在,部门也没有意义了。
  • 再例如:人和五脏六腑、四肢的关系。组合关系。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/菜鸟追梦旅行/article/detail/577971
推荐阅读
相关标签
  

闽ICP备14008679号