一个老师,也可以有多个老师任教;每门课程可以有0或1本教材,每本教材只能用于一门课程。
4、 现有一系统需要对商品进行管理,包括添加,删除商品,修改
商品信息三项功能,画出系统类图。(商品信息包括商品编号,商品名称,价格,生产厂商等)
5、 如果现在系统需求发生变化,需要能够对损坏商品进行打折,
以及可以按照商品的颜色和外形进行查询,则系统类图应该如何修改?
6、 根据下面的代码画出Invoice类的类图,要求标明各属性的类
型和可见性以及类方法。
第 11 页 共 26 页
11
public class Invoice
{
public double amount;
public Date date = new Date(); public string customer; public string specification;
public string administrator = “unspecified”; static private int number_of_invoices()=0; public invoice(); {
number_of_invoices++; }
public void print() {
System.out.println(\number of invoices is”+ int number_of_invoices); } }
7、 下图是一个仓库管理系统的类模型局部,其中IncomeOrder是
指入库单,OrderItem是指入库中的每一项,Product则是产品信息。请指出模型中的错误,说明原因并改正类图。
第 12 页 共 26 页 12
IncomeOrder11ProductOrderItem
[分析与讨论]
1、 讨论类图在建模过程中的重要作用。
2、 总结在设计绘制类图的过程中应注意哪些问题。
实验四 对象图
[实验目的和要求]
1、 掌握对象的概念,对象的三大特征,对象的表示方法。2、 掌握类与对象的关系。
[实验内容和步骤]
第 13 页 共 26 页
13
1、 什么是对象,对象的三大特征是什么? 2、 UML中对象的表示方法有哪些?
3、 在下图中最上面的对象的名称是什么?该图表示的意思是什
么?请绘制出与其相应的类图。
China:CountryfuJian:ProvincesiChuan:Province
4、 说明对象图的适用场景以及它的优缺点。
[分析与讨论]
1、 思考类与对象之间的关系是怎样的?各举几个实例,说明哪些
是类,哪些是对象。
2、 思考在具体场景中应该如何区分类与对象。 3、 找一段源程序,并绘制出与其相应的对象图。
实验五 包图
[实验目的和要求]
1、 掌握UML包的概念和作用。
2、 掌握包与包之间的各种依赖关系的区别。 3、 掌握建立包与包之间依赖关系的方法。
第 14 页 共 26 页
14
4、 掌握建立包图过程中需遵循的原则。
[实验内容和步骤]
1、 包属于UML中的何种事物?有何作用? 2、 UML中包的表示方法有哪几种? 3、 包与包之间存在哪几种关系? 4、 包与包之间的依赖关系有何特点?
5、 如何避免包与包之间出现循环依赖关系?各举一例。 6、 建立包图应注意哪些问题?
7、 根据下图判断下面哪句话正确的说明了包之间的依赖关系。
A) 对Package1包中的元素做了修改后,需检查Package2包中
的元素和Package3包中的元素是否要做相应修改。 B) 对Package1包中的元素做了修改后,需检查Package2包中
的元素是否需要做相应修改,如果是,则需继续检查是否Package3包中元素也要做相应修改。
C) 对Package3包中的元素做了修改后,需检查Package2包中
的元素是否需要做相应修改,如果是,则需继续检查是否Package1包中元素也要做相应修改。
D) 对Package3包中的元素做了修改后,需检查Package2包中
的元素和Package1包中的元素是否要做相应修改。
8、 下面包图设计中是否存在问题?应如何改进。
第 15 页 共 26 页 15