第11章 面向对象设计
- 格式:ppt
- 大小:274.00 KB
- 文档页数:41
第11章面向对象设计一、选择题1.()是不需要接收消息就能主动执行的服务。
A.内部服务B.外部服务C.内嵌服务D.上层服务【答案】B【解析】主动服务是不需要接收消息就能主动执行的服务,它在程序实现中是一个主动的程序成分,而外部服务属于主动服务,所以答案选B项。
2.火车是一种陆上交通工具,火车和陆上交通工具之间的关系是()关系。
A.组装B.整体与部分C.has aD.一般与具体【答案】D【解析】火车是一种陆上交通工具,而陆上交通工具不一定是火车,还可以是汽车、自行车等,说明火车是陆上交通工具的具体化,而陆上交通工具是火车的一般化,所以它们之间的关系是一般与具体的关系。
3.()只供对象内部的其他服务使用,不对外提供。
A.外部服务B.内部服务C.内嵌服务D.上层服务【答案】B【解析】对象的服务分为外部服务和内部服务两种,其中,内部服务只供内部的其它服务使用,不对外提供,外部服务只供对象外部的其它服务使用,不对内提供。
4.对象标识是分配给每个对象的永久性标识(又称作“柄”),它不符合下述条件()。
A.在一定的范围或领域(例如一个应用系统)中是唯一的B.与对象实例的特征、状态及分类(可能是动态的)无关C.在对象存在期间保持一致D.在对象存在之后保持一致【答案】D【解析】对象标识符合如下几个条件:①在一定的范围或领域中是唯一的;②与对象实例的特征、状态及分类无关;③在对象期间保持一致。
5.对象或者类的整体行为(例如响应消息)的某些规则所不能适应的(对象或类的)()。
A.状况B.情态C.条件D.问题【答案】D【解析】对象或者类的整体行为(例如响应消息)的某些规则所能适应的(对象或类的)状况、情况、条件、形式或生存周期阶段。
二、填空题1.对象的服务可分为_____、_____。
【答案】外部服务;内部服务2._____不同取值所构成的组合都可看作对象的一种新的状态。
【答案】对象的每个属性3.如果在一个服务中包括了多项可独立定义的功能,则它是_____,应尝试把它分解为多个服务。
作业四面向对象需求建模(第9-11章)4-1、根据以下描述,使用面向对象的分析方法,分析有那些主要对象和这些对象的主要属性、方法,画出对象图。
一个饮料自动售货机可以放置五种不同或部分相同的饮料,可由厂商根据销售状况自动调配,并可随时重新设置售价,但售货机最多仅能放置50罐饮料,其按钮设计在各种饮料样本的下方,若经金额计算器累计金额足够,则选择键灯会亮;若某一种饮料已销售完毕,则售完灯会亮。
顾客将硬币投入售货机,经累加金额足额的饮料选择键灯亮,等顾客按键选择。
顾客按键后饮料由出物口掉出,并自动结算及找钱。
顾客可在按下选择键前任何一个时刻,可以拉动退币杆取消交易收回硬币。
4-2、请画出一个用户使用银行ATM的状态转换图。
从用户将卡插入卡槽开始,到用户取卡结束(如果用户忘记,ATM应报警),用户可以完成以下几个步骤:登录(卡片进入ATM机后,如果不是可读卡,退卡;如是,等待用户输入密码,三次错,吞卡,正确后进入主菜单),取钱(进入取钱菜单,输入金额,如果帐户余额不足,提示余额,并要求用户重新输入,如果帐上钱够,吐钱币,并询问是否打印凭证,最后返回主菜单),主菜单提供退出取卡选择。
4-3、某公安报警系统在一些公安重要保护单位(银行、学校等)安装了报警装置,其工作过程如下:一旦发生意外事故,故事发生单位只需按报警按钮,系统立即向公安局发出警报信息、自动显示出报警单位的地址、电话号码等。
110警车立即出动前往出事地点。
值班人员可以接通事故单位的电话、问清情况,需要时再增派公安人员到现场处理。
根据以上情况进行分析,确定本系统有哪些用例、对象,画出用例图、类图及顺序图。
下面是某位同学做的用例:按报警按钮,向公安局发出警报信息,显示报警单位地址电话,110警车前往出事地点,值班人员接通事故单位的电话、问清情况,增派公安人员对象:事故单位、报警系统、公安局、值班人员、公安人员,警车类图:用例图:事故单位报警系统值班人员顺序图:4-4、小李新接了一个项目:设计一个简单的学生选课系统,系统能注册符合要求的同学,同学注册以后就能进行选课,选课过程如下:先选课名,然后根据课程的上课老师、时间、地点和人数限制来决定是否成功选课;老师也可以根据情况提供新的课程说明或修改过去课程的说明;教务处的老师统一管理注册的情况,可以有删除、修改学生、老师和课程的权限。
第11章面向对象的设计与实现一、填空题(30小题)1、类型一致性原则要求子类S必须满足6个限制条件:( )、( )、( )、( )、( )和( )。
答案:S的状态空间(State-space)必须与T的状态空间一致(但S可以拥有额外空间以延伸T的状态空间)、在S和T的共享空间中,S的状态空间必须等同于或位于T的状态空间之内。
对于T的每一操作(如T.叩),S覆盖或重定义为S.op,则:S.Op必须与T.op名称相同、S.op的形式函数原型的参数必须与T.op的形式函数原型的参数表一一对应、S.op 的前置条件必须等同于或弱于T.op的前置条件、S.op的后置条件必须等同于或强于T.op 的后置条件2、类的实例化是( )。
答案:对象3、对象之间进行通信的构造叫做( )。
答案:消息4、闭合行为原则是指:( )。
答案:在基于类型/子类型层次结构的继承层次结构中,类C的任何对象操作的执行,包括从C的超类继承的所有操作应满足C的类不变式5、类型( )对于创建类库的类层次结构至关重要。
答案:一致性原则6、输出端是指( )。
答案:通过一个给定程序的多行代码来测量引用其他程序的次数7、不同应用中信息共享的这种机制和构造是通过( )来实现的。
答案:类库8、类型一致性设计原则可表述为( )。
答案:如果S为T的真子类型,则S必须与T一致,即类型S的对象可以出现在类型T的对象所需要的任何环境中,并且当该对象的任何获取操作执行时,仍能保持其正确性9、耦合性用来度量( )。
答案:程序之间联系的次数和强度10、没有经过封装的原始代码规定为( )封装。
答案:0级11、一个( )可以具体实现为多个类,每个类又包括自己独特的内部设计。
答案:类型12、受限关联由两个类和一个( )组成。
答案:限定词13、类具有属性,描述类的属性用( )。
答案:数据结构14、一个标准的面向对象系统包含的类通常来自于4个主要领域:( )。
(1)基础领域包含了( )。