您好,欢迎访问三七文档
专题三:类图(对象图)一、单项选择题1.在UML中,类之间的关系有一种为关联关系,其中多重性用来描述类之间的对应关系,下面哪个不是其中之一()A.0….1B.0….*C.1….*D.*….*2.通常对象有很多属性,但对于外部对象来说某些属性应该不能被直接访问,下面哪个不是UML中的类成员访问限定性()A.公有的(public)B.受保护的(protected)C.友员(friendly)D.私有的(private)3、在一个课程注册系统中,定义了类CourseSchedule和类Course,并在类CourseSchedule中定义了方法add(c:Course)和方法remove(c:Course),则类CourseSchedule和类Course之间的关系是:()A、泛化关系B、组成关系C、依赖关系D、包含关系4、类A的一个操作调用类B的一个操作,且这两个类之间不存在其他关系,那么类A和类B之间是()关系。()A、实现B、关联C、依赖D、泛化5、在UML中下列图形代表什么关系?()A、组成关系B、依赖关系C、聚集关系D、泛化关系6、在UML中下列图形代表什么关系?()A、组成关系B、依赖关系C、聚集关系D、泛化关系7、汽车(Car)由轮子、发动机、油箱、座椅、方向盘等组成。那么car类和其他类(Wheel、Engin、Tank、Chair、SteeringWheel)之间的关系是:()A、泛化关系(Generalization)B、实现关系(Realization)C、包含关系(Inclusion)D、组合关系(Composition)8.在下面的图例中,哪个用来描述注释()ABCD9、在一个网络游戏系统中,定义了类Cowboy和类Castle,并在类Cowboy中定义了方法open(c:Castle)和方法Close(c:Castle),则类Cowboy和类Castle之间的关系是:……()A、依赖(dependency)关系B、组成(composition)关系C、泛化(generalization)关系D、包含(include)关系10、根据下面的代码,判断下面那些叙述是正确的?()publicclassHouseKeeper{privateTimeCardtimecard;publicvoidclockIn(){timecard.punch();}}A、类HouseKeeper和类TimeCard之间存在关联(Association)关系;B、类HouseKeeper和类TimeCard之间存在泛化(Generalization)关系;C、类HouseKeeper和类TimeCard之间存在实现(Realization)关系;D、类HouseKeeper和类TimeCard之间存在包含(Inclusion)关系11、已知类A需要类B提供的服务,下列所描述的四种情况中,哪种情况不好把类A和类B之间的关系定义成依赖关系()A、类A中存在两个操作都需要访问类B的同一个对象B、类A的某个操作内部创建了类B的对象,而其他操作均与类B无关C、类A的某个操作其参数是类B的对象,而其他操作均与类B无关D、类B是一个全局变量12、“一个研究生在软件学院做助教(teachingassistant),同时还在校园餐厅打工做收银员(cashier)。也就是说,这个研究生有3种角色:学生、助教、收银员,但在同一时刻只能有一种角色。”根据上面的陈述,下面哪个设计是最合理的?()PersonCashierStudentTeachingAssistant接口PersonRoleCashierStudentTeachingAssistantPerson0..1AB接口Cashier接口Student接口TeachingAssistantPersonCashierStudentTeachingAssistantPersonCD14、类X与类Y有许多的属性,但是它的行为与类Y稍微有所不同;这时可以认为类X是类Y的一种特例;则类X和类Y之间是()关系。A、泛化关系B、关联关系C、依赖关系D、实现关系二、简答题1、在UML建模中使用“包”是为了达到怎样的效果?2、下图显示了某个学校课程管理系统的部分类图,其中一个学生(student)可以知道所有注册课程的教师(instructor),一个教师也可以知道所有注册课程的学生。现在提出一个新的需求:一个教师也可以是某些课程的学生,那么下面设计A~C中哪一个是最好的?为什么?设计A:设计B:.设计C:答案:设计___最好。理由:3、请为下面这段编译正确的代码,补充类图。pulicclassStudent{privateStringname;publicvoidsetName(Stringname){this.name=name;}publicStringgetName(){returnthis.name;}}4、根据下面的陈述画出类图1)学生包括本科生、研究生两种。2)研究生的一部分利用课余时间担任助教。3)教师包括讲师和教授两种。4)一名助教可以为一位讲师或一位教授助课,一位讲师只能有一名助教,一位教授可以有5名助教。5、按如下描述画出一个自治机器人的类图。这张图的焦点是聚集在那些让机器人在路上行走的机制所对应的类上。你可以发现一个虚类Motor和两个从它派生出来的类:SteeringMotor和MainMotor。这两个类都从它的父亲Motor继承了五个方法:move()、stop()、resetCounter()、statues()、distance()。这两个类又是另一个类Driver的一部分。类PathAgent和Driver有一个1对1的关系,和CollisionSensor有1对n的关系。【问题:】综上所述请你用UML来绘制分析类图。
本文标题:类图练习题
链接地址:https://www.777doc.com/doc-2099044 .html