Java类之间的关系:泛化、依赖、关联、实现、聚合、组合

参考自
https://blog.csdn.net/lpjishu/article/details/51491779

泛化

泛化:继承关系,’is-a-kind-of’,泛化关系用于描述父子之间的关系。父类又称作基类或超类,子类叫做派生类。
java使用继承extends实现泛化,对应uml图为带空心三角形直线表示。
uml中有三个要求:
1.父类所具有的属性、操作,子类都应该有。
2.子类除父类一致信息外,还包括额外的信息。
3.可以使用父类的实例子类也可以使用。同1

依赖:

依赖:一种使用关系,特定事物的改变有可能会影响到使用该事物的其他事物,多数情况下,依赖关系体现在某个类的方式使用另一个类的对象作为参数。
uml中:依赖关系带箭头虚线便是,依赖的一方指向被依赖的一方。
有三种情况:
1.A类是B类中局部变量
2.A类是B类中的某个参数
3.A类向B类发送消息,从而影响B类发生变化。

关联

关联:结构关系,一个事物的对象与另一个事物的对象相联系。两个有关联的类,可由一个类得到另一个类对象。
有一对一关系和多对一关系
可联想到表的关系

在uml中,用实线连接有关联的对象对应的类,通常在java中实现关联关系时,常常将一个类的对象作为另一个类的属性。并且需要在关联的线上标注角色名。
商城系统

聚合关系

聚合关系:表示一个整体与部分的关系,常常在定义一个完整类后,再去分析其结构,找出成员类,整体类和成员类形成聚合关系
uml中使用带空心菱形带箭头直线表示
箭头表示成员类菱形指向整体类
成员类可以单独存在。

组合关系

组合关系:表示类之间整体和部分的关系,区别在组合关系中部分和整体具有一致的生存期,相互依存,不能独立存在
成员是整体的一部分,整体类可以控制成员类的生命周期,成员类依赖于整体类。
Uml中带实心菱形的带箭头直线表示,同聚合表示方式相似

实现关系

实现关系:接口,类,抽象类之间存在的一种实现关系,类实现了接口。
在UML中类和接口之间关系用带空心三角形的虚线表示。

区别组合和聚合关系,相似但可通过关系强弱,创建销毁之间有无关联(生存依赖)

强弱关系:
由弱到强
依赖 关联 聚合 组合 泛化(继承)
(补充部分)

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值