欢迎来到天天文库
浏览记录
ID:32731704
大小:243.01 KB
页数:8页
时间:2019-02-15
《uml新编实验指导书(实验三类图)》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、上机实验(三)创建类和类图一、实验目的:在Rose环境下创建类和类图,完成应用案例的类图设计。二、实验内容:(一〉创建类1)根据“需求陈述”提炼对象和类2)分析对象,并将对象抽象成类(二)创建类图建立类之间的关系(关联关系、泛化关系、聚集或组合关系、依赖关系等》创建类图。(三)综合应用练习。三、操作步骤:(一)创建类仁启动Rose2003进入后,在左面结构框内右击LogicalView;2、选NewT选ClassDiagram,再在ClassDiagram下创建类;3、给类命名(比如Course);4、增加属性(右击框途中的类,选NewAttribute);5、添加类操作(右击框途中的类
2、,选NewOperation);(二)建立类之间的关系1.首先关联关系(使用按钮工具,如果当前工具栏中没有,右击工具栏,然后添加相关按钮)1)单项关联;2)双向关联。2.练习聚集和组合(先建立关联,再右击靠近“整体”方的关联线,选Aggregate选项。)3.然后泛化关系。4.最后练习依赖关系。四、实例练习(不能用课件及教材上的示例,要自己来想。》1.举实例说明类之间的关联关系。包括:单、双向关联、一对一关联、一对多关联*多对多关联、自反关联.限定关联和关联类。2.举实例说明类之间的聚合《组合)关系。3.举实例说明类之间的泛化(继承〉关系。包括:单继承、多继承。4.举实例说明接口与实现,
3、抽象类与子类等。五、综合应用:(-)以“学生选课系统”为例建立类图1•“学生选课系统”涉及到的类:1)Database类属性:dbPath:String操作:(以下列出部分操作)QueryCourse()GetdbPath()2)Student类属性:studentID:Int操作:getStudentID()getStudentName()3)Registrar类属性:registrarName:String操作:getregID()getregistrarName()4)Course类属性:courselD:Intclassroom:String操作:createCourse()se
4、tName()getTeacher()AddCourse()SetdbPath()DeIeteCourse()studentName:StringsetStudentID()setStudentName()regID:IrrtsetregID()setregistrarName()courseName:Stringteacher:stringdestroyCourse()getCourselDOsetTeacher()getName()setCourseID()5)Control类属性:(无)操作:verifyCourse()confirmDeIete()6)Form类属性:(接口无属性
5、)操作:getCourselnfo()canAdd()canSelect()showSuccessInfo()queryCourse()queryAssociation()showConfirmPage()dispIayCourseList()querySeIectCourse()2.创建上述类之间的关系;①Student和Form之间单向关联(一对多)②Registrar和Form之间单向关联(一对多)①Form和Course之间单向关联(一对多)②Control和Course之间单向关联(一对多)③Control和Form之间双向关联(一对多)④Control和Database之间单
6、向关联(一对一)2.完成类图(对象模型)的设计(以下是简化的类图参考图,详细的类图由同学们自己来完成。》图3—1学生选课系统简化类图4.生成代码。可以针对某一个类,比如Course类,生成Java源代码,操作如下:①设置参数:Tools;OptionsNotation标签②在Default框中选Java;③检查类中所有操作,确认它们都具有返回值类型;④选种类Course,然后选订oolsJava/J2EEGeneraIcode⑤代码存放的路径(CLASSPATHentries)可以设为d:student_namecode;生成的代码如下://Sourcefile:d:\code\
7、Course.javapubIicclassCourse{privateStringcourseName;privateIntcourselD;privateStringclassRoom;pubIicDatabasetheDatabase;/***©roseuid44C6FA3000E6*/pubIicCourse(){}/***@roseuid4429D321008C*/pubIicvoidgetCourselDO{}/***@
此文档下载收益归作者所有