关联关系、依赖关系总结

一、关联关系总结:

1.对象和对象之间的连接。在Java中,关联关系的代码表现形式为一个类做为另一个类的属性类型存在。即“有”的关系:”has-a”。

2.关联关系的方向:关联关系分为单向关联和双向关联

①单向关联: A类关联B类。

②双向关联:A类关联B类,B类关联A类。

3.关联关系的多重性:①一对一关联:一个学生,只能在一个班级里学习。

②一对多关联:一个学生,可以参加多个班级学习。

③解决一对多的关联的方案:集合和数组。

集合

例:

public class Classes{     

 }

public  class Student{

private List Classess;

}

数组

例:

public class Classes{      

}

public  class Student{

private Classes[] Classess;

}

4.关联关系的特殊情况:如果两个互相关联的类中有整体和部分的关系,关联关系分为: 聚合和组合,主要区别在于生命周期不同。

二、依赖关系总结:

1.依赖关系的定义:依赖关系(use-a),指一个类A使用到了另一个类B。

2.依赖关系的特性:这种关系是具有偶然性的、临时性的、非常弱的,但是类B的变化会影响到类A。

3.依赖具体表现:在代码层面,依赖关系表现为类B作为参数被类A在某个method。

4.依赖与关联的区别:

关联是“HAS”关系,依赖是“USE”关系:

①A类关联B类,指的是B类对象作为A类的属性存在,称为“has”关系。

②A类依赖B类,指的是B的对象作为A类的方法参数存在,称为“use”关系。

生命周期不同:

①如果A类关联B类,那么创建A类的对象时实例化B类的对象,直到A类对象被销毁,所关联的B类对象也被销毁。即只要A类对象存在,B类对象就存在。

②如果A类依赖B类,那么只有当A类对象调用到相应方法时,B类对象才被临时创建,方法执行结束,B类对象即被回收,A类和B类之间的依赖关系是一种瞬时的关系。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在UML类图中,继承关系是指一个类(子类)可以继承另一个类(父类)的属性和方法。子类继承了父类的所有行为和属性,并且可以新增新的功能或者重写父类的功能。在UML类图中,继承关系用带空心三角箭头的实线来表示,箭头指向父类。 除了普通的继承关系,还有一种抽象的继承关系。在Java中,抽象的继承关系是指子类继承了父类的抽象方法,但是并不具体实现这些方法,而是由子类来具体实现。这种抽象继承关系在UML类图中也可以用带空心三角箭头的虚线来表示。 总结来说,在UML类图中,继承关系用于表示子类继承父类的行为和属性,可以新增新的功能或者重写父类的功能。同时,还有一种抽象的继承关系,用于表示子类继承父类的抽象方法,但不具体实现。<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span> #### 引用[.reference_title] - *1* *2* *4* [UML类图:类、继承和实现、关联、聚合、组合、依赖](https://blog.csdn.net/dyxcc/article/details/118256272)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *3* [UML之类图,继承,实现,聚合,组合](https://blog.csdn.net/hl_java/article/details/126294562)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值