1、软件设计师软件设计师面向对象部分面向对象部分天津工程师范学院天津工程师范学院大纲要求大纲要求v考试科目考试科目1:计算机与软件工程知识:计算机与软件工程知识3.6. 面向对象基础知识面向对象基础知识面向对象开发方法面向对象开发概念面向对象开发方法面向对象开发概念(类、(类、对象、属性、封装性、继承性、多态性,对对象、属性、封装性、继承性、多态性,对象之间的引用)象之间的引用)面向对象开发方法的优越性以及有效领域面向对象开发方法的优越性以及有效领域面向对象分析方法概念面向对象设计方法面向对象分析方法概念面向对象设计方法(体系结构,类的设计,用户接口设计)(体系结构,类的设计,用户接口设计)4-1
2、0分分天津工程师范学院天津工程师范学院大纲要求大纲要求v考试科目考试科目1:计算机与软件工程知识:计算机与软件工程知识3.6. 面向对象基础知识面向对象基础知识面向对象实现方法面向对象实现方法(选择程序设计语言,类(选择程序设计语言,类的实现,方法的实现,用户接口的实现,准的实现,方法的实现,用户接口的实现,准备测试数据)备测试数据)面向对象程序设计语言的基本机制面向对象程序设计语言的基本机制面向对象数据库、分布式对象的概念面向对象数据库、分布式对象的概念天津工程师范学院天津工程师范学院大纲要求大纲要求v考试科目考试科目1:计算机与软件工程知识:计算机与软件工程知识v重点:重点:类、对象、属性
3、、封装性、继承性、多态性类、对象、属性、封装性、继承性、多态性天津工程师范学院天津工程师范学院大纲要求大纲要求v 考试科目考试科目2:软件设计:软件设计4系统实施系统实施 4.3掌握掌握C程序设计语言,以及程序设计语言,以及C+、Java、Visual、Basic、Visual C+中任一种程序设计语言,以便能中任一种程序设计语言,以便能指导程序员进行编程和测试,并进行必要的优化指导程序员进行编程和测试,并进行必要的优化。5软件工程软件工程软件工程发展趋势(面向构件,统一建模语言软件工程发展趋势(面向构件,统一建模语言(UML) v 重点:重点:UML的各类图,在系统分析中的应用的各类图,在系
4、统分析中的应用。15-20分分天津工程师范学院天津工程师范学院真题真题2012013 3年年上上半年半年v在多态的几种不同形式中,(在多态的几种不同形式中,(37) 多态是一种特多态是一种特定的多态,指同一个名字在不同上下文中可代表定的多态,指同一个名字在不同上下文中可代表不同的含义。不同的含义。A.参数参数B.包含包含C.过载过载D.强制强制天津工程师范学院天津工程师范学院真题真题2012013 3年年上上半年半年v继承是父类和子类之间共继承是父类和子类之间共享数据和方法的机制。以享数据和方法的机制。以下关于继承的叙述中,不下关于继承的叙述中,不正确的是正确的是 (38) 。有关于。有关于图
5、中图中doIt()方法的叙述中,方法的叙述中,正确的是正确的是 (39) 。天津工程师范学院天津工程师范学院A.一个父类可以有多个子类,这些子类都是父类的特例一个父类可以有多个子类,这些子类都是父类的特例B.父类描述了这些子类的公共属性和操作父类描述了这些子类的公共属性和操作C.子类可以继承它的父类(或祖先类)中的属性和操作而不必子类可以继承它的父类(或祖先类)中的属性和操作而不必自己定义自己定义D.子类中可以定义自己的新操作而不能定义和父类同名的操作子类中可以定义自己的新操作而不能定义和父类同名的操作39.A.doIt()必须由必须由Thing3实现,同时可能由实现,同时可能由Thing4实
6、现实现B. doIt()必须由必须由Thing5实现实现 C. doIt()必须由必须由Thing2、Thing3、Thing4、Thing5实现实现D. doIt()已经由已经由Thing1实现,因为无需其它类实现实现,因为无需其它类实现真题真题2012013 3年年上上半年半年天津工程师范学院天津工程师范学院真题真题2012013 3年年上上半年半年v以下关于以下关于UML部署图的叙述中,正确的是部署图的叙述中,正确的是 (40)A.因为一条消息总是有某种响应,所以部署组件之因为一条消息总是有某种响应,所以部署组件之间的依赖是双向的间的依赖是双向的B.部署组件之间的依赖关系类似于包依赖部署
7、组件之间的依赖关系类似于包依赖C.部署图不用于描述代码的物理模块部署图不用于描述代码的物理模块D.部署图不用于描述系统在不同计算机系统的物理部署图不用于描述系统在不同计算机系统的物理分布分布天津工程师范学院天津工程师范学院以下关于以下关于UML状态图的叙述中,不正确的是(状态图的叙述中,不正确的是(41)。对下图的)。对下图的描述,正确的是(描述,正确的是(42)41.A.用于描述一个对象在多个用例中的行为用于描述一个对象在多个用例中的行为B.用于某些具有多个状态的对象而不是系统中大多数或全部对象用于某些具有多个状态的对象而不是系统中大多数或全部对象C.用于描述多个对象之间的交互用于描述多个对
8、象之间的交互D.可以用于用户界面或控制对象可以用于用户界面或控制对象42.A.ON是一个并发状态是一个并发状态B.因为此状态图中没有终点因为此状态图中没有终点(final)状态,所以此图是无效的状态,所以此图是无效的C.play stop 和和rew 是动作是动作D.ON是超状态是超状态真题真题2012013 3年年上上半年半年天津工程师范学院天津工程师范学院描述一些人(描述一些人(Person)将动物()将动物(Animal)养为宠物)养为宠物(Pet)的是的是真题真题2012013 3年年上上半年半年天津工程师范学院天津工程师范学院(44)设计模式能使一个对象的状态发生改变时通)设计模式能
9、使一个对象的状态发生改变时通知所有依赖它的监听者。(知所有依赖它的监听者。(45)设计模式限制类)设计模式限制类的实例对象只能有一个。适配器(的实例对象只能有一个。适配器(Adapter)设计)设计模式可以用于(模式可以用于(46)。用于为一个对象添加更多)。用于为一个对象添加更多功能而不使用子类的是(功能而不使用子类的是(47)设计模式)设计模式44.A.责任链责任链 B.命令命令 C.抽象工厂抽象工厂 D.观察者观察者45.A.原型原型 B.工厂方法工厂方法 C.单例单例 D.生成器生成器真题真题2012013 3年年上上半年半年天津工程师范学院天津工程师范学院46.A.将已有类的接口转换
10、成和目标接口兼容将已有类的接口转换成和目标接口兼容 B.改进系统性能改进系统性能C.将客户端代码数据转换成目标接口期望的合适的将客户端代码数据转换成目标接口期望的合适的格式格式D.使所有接口不兼容可以一起工作使所有接口不兼容可以一起工作47.A.桥接桥接B.适配器适配器C.组合组合D.装饰器装饰器真题真题2012013 3年年上上半年半年天津工程师范学院天津工程师范学院 (37) 以下关于类和对象的叙述中,错误的是以下关于类和对象的叙述中,错误的是_。 A类是具有相同属性和服务的一组对象的集合类是具有相同属性和服务的一组对象的集合 B类是一个对象模板,用它仅可以产生一个对象类是一个对象模板,用
11、它仅可以产生一个对象 C在客观世界中实际存在的是类的实例,即对象在客观世界中实际存在的是类的实例,即对象 D类为属于该类的全部对象提供了统一的抽象描类为属于该类的全部对象提供了统一的抽象描述述真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院 (38) 是把对象的属性和服务结合成一个独立的系统是把对象的属性和服务结合成一个独立的系统单元,并尽可能隐藏对象的内部细节:单元,并尽可能隐藏对象的内部细节: (39) 是指是指子类可以自动拥有父类的全部属性和服务;子类可以自动拥有父类的全部属性和服务; (40) 是对象发出的服务请求,一般包含提供服务的对是对象发出的服务请求,一般
12、包含提供服务的对象标识、服务标识、输入信息和应答信息等。象标识、服务标识、输入信息和应答信息等。 (38) A继承继承 B多态多态 C消息消息 D封装封装 (39) A继承继承 B多态多态 C消息消息 D封装封装 (40) A继承继承 B多态多态 C消息消息 D封装封装真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院(41) 以下关于面向对象分析的叙述中,错误的是以下关于面向对象分析的叙述中,错误的是_。 A面向对象分析着重分析问题域和系统责任面向对象分析着重分析问题域和系统责任 B面向对象分析需要考虑系统的测试问题面向对象分析需要考虑系统的测试问题 C面向对象分析忽略
13、与系统实现有关的问题面向对象分析忽略与系统实现有关的问题 D面向对象分析建立独立于实现的系统分析模型面向对象分析建立独立于实现的系统分析模型真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院(42) 以下关于面向对象设计的叙述中,错误的是以下关于面向对象设计的叙述中,错误的是_。 A高层模块不应该依赖于底层模块高层模块不应该依赖于底层模块 B抽象不应该依赖于细节抽象不应该依赖于细节 C细节可以依赖于抽象细节可以依赖于抽象 D高层模块无法不依赖于底层模块高层模块无法不依赖于底层模块真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院采用采用 (43) 设
14、计模式可保证一个类仅有一个实例;采用设计模式可保证一个类仅有一个实例;采用 (44) 设计设计模式可将对象组合成树形结构以表示模式可将对象组合成树形结构以表示“部分部分-整体整体”的层次结构,的层次结构,使用户对单个对象和组合对象的使用具有一致性:采用使用户对单个对象和组合对象的使用具有一致性:采用 (45) 设设计模式可动态地给一个对象添加一些额外的职责。计模式可动态地给一个对象添加一些额外的职责。 (43) A命令命令(Command) B单例单例(Singleton) C装饰装饰(Decorate) D组合组合(CompOsite) (44) A命令命令(Command) B单例单例(S
15、ingleton) C装饰装饰(Decorate) D组合组合(Composite) (45) A命令命令(Command) B单例单例(Singleton) C装饰装饰(Decorate) D组合组合(Composite)真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院下列下列UML类图表示的是类图表示的是 (46) 设计模式。该设计模式中,设计模式。该设计模式中, (47) 真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院 (46) A备忘录备忘录(Memento) B策略策略(Strategy) C状态状态(Stye) D观察者观察者(Ob
16、server) (47) A一个一个Subject对象可对应多个对象可对应多个Observer对象对象 BSubject只能有一个只能有一个ConcreteSubject子类子类 CObserver只能有一个只能有一个ConcreteObserver子类子类 D一个一个Subject对象必须至少对应一个对象必须至少对应一个Observer对对象象真题真题20122012年年下下半年半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上
17、半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年下图中(下图中(4141)表示一条同步消息()表示一条同步消息(4242)表示一条异步消息)表示一条异步消息(4343)表示一条返回消息)表示一条返回消息天津工程师范学院天津工程师范学院天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122
18、012年上半年年上半年v 下午题下午题 试题三(试题三(pdf)天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年v下午题下午题 试题五(试题五(pdf)天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院天津工程师范学院天津工程师范学院真题真题20122012年上半年年上半年天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年
19、天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201111年年下下半年半年v下午试题三(下午试题三(pdf)v下午试题五下午试题五天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题
20、20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201111年年上上半年半年v下午试题三(下午试题三(pdf)v下午试题五下午试题五天津工程
21、师范学院天津工程师范学院真题真题20201010年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201010年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201010年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201010年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201010年年下下半年半年天津工程师范学院天津工程师范学院真题真题20201010年年下下半年半年v下午试题三(下午试题三(pdf)v下午试题五下午试题五天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年天津工程师范学院天津工程师范学院真题真题2020
22、1010年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年天津工程师范学院天津工程师范学院天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年天津工程师范学院天津工程师范学院真题真题20201010年年上上半年半年v下午试题三(下午试题三(pdf)v下午试题五下午试题五天津工程师范学院天津工程师范学院真题真题20092009
23、年上半年年上半年v在采用面向对象技术构建软件系统时,在采用面向对象技术构建软件系统时, 很多敏捷很多敏捷方法都建议的一种重要的设计活动是方法都建议的一种重要的设计活动是 (15),它,它是一种重新组织的技术,可以简化构件的设计而是一种重新组织的技术,可以简化构件的设计而无需改变其功能或行为。无需改变其功能或行为。A. 精化精化 B. 设计类设计类 C. 重构重构 D. 抽象抽象 天津工程师范学院天津工程师范学院真题真题20092009年上半年年上半年v下面关于面向对象分析与面向对象设计的说法中,下面关于面向对象分析与面向对象设计的说法中,不正确的是不正确的是 (37) 。 A. 面向对象分析侧
24、重于理解问题面向对象分析侧重于理解问题 B. 面向对象设计侧重于理解解决方案面向对象设计侧重于理解解决方案 C. 面向对象分析描述软件要做什么面向对象分析描述软件要做什么 D. 面向对象设计一般不关注技术和实现层面的面向对象设计一般不关注技术和实现层面的细节细节天津工程师范学院天津工程师范学院真题真题20092009年上半年年上半年v在面向对象分析与设计中,(在面向对象分析与设计中,(38)是应用领域中的核心类,)是应用领域中的核心类,一般用于保存系统中的信息以及提供针对这些信息的相关一般用于保存系统中的信息以及提供针对这些信息的相关处理行为;(处理行为;(39)是系统内对象和系统外参与者的联
25、系媒)是系统内对象和系统外参与者的联系媒介;介; (40) 主要是协调上述两种类对象之间的交互。主要是协调上述两种类对象之间的交互。v (38)A. 控制类控制类 B. 边界类边界类 C. 实体类实体类 D. 软件类软件类 (39)A. 控制类控制类 B. 边界类边界类 C. 实体类实体类 D. 软件类软件类 (40)A. 控制类控制类 B. 边界类边界类 C. 实体类实体类 D. 软件类软件类 天津工程师范学院天津工程师范学院真题真题20092009年上半年年上半年v若类若类 A 仅在其方法仅在其方法 Method1 中定义并使用了类中定义并使用了类 B 的一的一个对象,类个对象,类 A 其
26、它部分的代码都不涉及类其它部分的代码都不涉及类 B,那么类,那么类 A 与类与类 B 的关系应为(的关系应为(41);若类);若类 A 的某个属性是类的某个属性是类 B的一个对象,并且类的一个对象,并且类 A 对象消失时,类对象消失时,类 B 对象也随之对象也随之消失,则类消失,则类 A 与类与类 B 的关系应为的关系应为 (42)。)。 (41)A. 关联关联 B. 依赖依赖 C. 聚合聚合 D. 组组合合 (42)A. 关联关联 B. 依赖依赖 C. 聚合聚合 D. 组组合合 天津工程师范学院天津工程师范学院真题真题20092009年上半年年上半年v下图属于下图属于UML中的(中的(46)
27、,其中其中AccountManagement需需要(要(47)。)。(4646)A.A.组件图组件图 B. B.部署图部署图 C.C.类图类图D.D.对象图对象图A.A.实现实现 IdentityVerifierIdentityVerifier接口并被接口并被 CreditCardServices CreditCardServices 调用调用 B.B.调用调用 CreditCardServicesCreditCardServices实现的实现的IdentityVerifier IdentityVerifier 接口接口 C.C.实现实现 IdentityVerifierIdentityVer
28、ifier接口并被接口并被 Logger Logger 调用调用 D.D.调用调用 LoggerLogger实现的实现的IdentityVerifier IdentityVerifier 接口接口 天津工程师范学院天津工程师范学院真题真题v 某银行计划开发一个自动存提款机模拟系统(某银行计划开发一个自动存提款机模拟系统(ATM System)。)。系统通过读卡器(系统通过读卡器(CardReader)读取)读取 ATM 卡;系统与客户卡;系统与客户(Customer)的交互由客户控制台()的交互由客户控制台(CustomerConsole)实现;)实现;银行操作员(银行操作员(Operator
29、)可控制系统的启动()可控制系统的启动(System Startup)和停止(和停止(System Shutdown);系统通过网络和银行系统();系统通过网络和银行系统(Bank)实现通信。当读卡器判断用户已将实现通信。当读卡器判断用户已将ATM卡插入后,创建会话卡插入后,创建会话(Session)。会话开始后,读卡器进行读卡,并要求客户输入)。会话开始后,读卡器进行读卡,并要求客户输入个人验证码(个人验证码(PIN)。系统将卡号和个人验证码信息送到银行系)。系统将卡号和个人验证码信息送到银行系统进行验证。验证通过后,客户可从菜单选择如下事务统进行验证。验证通过后,客户可从菜单选择如下事务T
30、ransaction):): 取款(取款(Withdraw)、存款()、存款(Deposit)、转账)、转账(Transfer)、查询()、查询(Inquire)v 一次会话可以包含多个事务,每个事务处理也会将卡号和个人一次会话可以包含多个事务,每个事务处理也会将卡号和个人验证码信息送到银行系统进行验证。若个人验证码错误,则转验证码信息送到银行系统进行验证。若个人验证码错误,则转个人验证码错误处理(个人验证码错误处理(Invalid PIN Process)。每个事务完成后,)。每个事务完成后,客户可选择继续上述事务或退卡。选择退卡时,系统弹出客户可选择继续上述事务或退卡。选择退卡时,系统弹出
31、 ATM 卡,会话结束。卡,会话结束。天津工程师范学院天津工程师范学院【问题问题 1】给出图给出图 3-1 中中 A1 和和 A2 所对应所对应的参与者,的参与者,U1 至至 U3 所对应的用例,以及该所对应的用例,以及该图中空图中空 (1)所对应的)所对应的关系。关系。 【问题问题 3】 解释图解释图 3-1 中用例中用例U3 和用例和用例 Withdraw、Deposit 等等四个用例之间的关系及四个用例之间的关系及其内涵。其内涵。(U1 至至 U3的可选用例包括:的可选用例包括:Session、Transaction、Insert Card、Invalid PIN Process和和 T
32、ransfer)天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午天津工程师范学院天津工程师范学院根据描述,根据描述,使用表中的使用表中的英文名称,英文名称,给出给出 69对应的消息。对应的消息。天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午v系统通过系统通过读卡器读卡器(CardReader)读取)读取 ATM 卡;卡;v系统与系统与客户客户(Customer)的交互由)的交互由客户控制台客户控制台(CustomerConsole)实现;)实现;v银行操作员银行操作员(Operator)可控制系统的启动()可控制系统的启动(System
33、 Startup)和停止()和停止(System Shutdown););v系统通过网络和系统通过网络和银行系统银行系统(Bank)实现通信。)实现通信。v当读卡器判断用户已将当读卡器判断用户已将ATM卡插入后,创建卡插入后,创建会话会话(Session)。会话开始后,读卡器进行读卡,并要求客)。会话开始后,读卡器进行读卡,并要求客户输入个人验证码(户输入个人验证码(PIN)。系统将卡号和个人验证码)。系统将卡号和个人验证码信息送到银行系统进行验证。验证通过后,客户可从菜信息送到银行系统进行验证。验证通过后,客户可从菜单选择如下事务单选择如下事务Transaction):): 取款(取款(Wi
34、thdraw)、)、存款(存款(Deposit)、转账()、转账(Transfer)、查询()、查询(Inquire)天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午v 现欲实现一个图像浏览系统,要求该系统能够显示现欲实现一个图像浏览系统,要求该系统能够显示 BMP、JPEG 和和 GIF 三种格式的文件,并且能够在三种格式的文件,并且能够在 Windows 和和v Linux 两种操作系统上运行。系统首先将两种操作系统上运行。系统首先将 BMP、JPEG 和和 GIF 三种格式的文件解析为像素矩阵,然后将像素矩三种格式的文件解析为像素矩阵,然后将像素矩阵显示在屏幕
35、上。系统需具有较好的扩展性以支持新的文阵显示在屏幕上。系统需具有较好的扩展性以支持新的文件格式和操作系统。为满足上述需求并减少所需生成的子件格式和操作系统。为满足上述需求并减少所需生成的子类数目,采用桥接(类数目,采用桥接(Bridge)设计模式进行设计所得类图)设计模式进行设计所得类图如图如图7-1 所示所示 天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午采用该设计模式的原因在于:系统解析采用该设计模式的原因在于:系统解析 BMPBMP、GIFGIF与与 JPEGJPEG文件文件的代码仅与文件格式相关,而在屏幕上显示像素矩阵的代码则的代码仅与文件格式相关,而在屏
36、幕上显示像素矩阵的代码则仅与操作系统相关。仅与操作系统相关。天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午class Matrix /各种格式的文件最终都被转化为像素矩阵各种格式的文件最终都被转化为像素矩阵 /此处代码省略此处代码省略 ; abstract class ImageImp public abstract void doPaint(Matrix m); /显示像素矩阵显示像素矩阵 m ; class WinImp extends ImageImp public void doPaint(Matrix m) /*调用调用windows系统的绘制函系统的绘
37、制函数绘制像素矩阵数绘制像素矩阵*/ ; class LinuxImp extends ImageImp public void doPaint(Matrix m)/*调用调用 Linux系统的绘制函数系统的绘制函数绘制像素矩阵绘制像素矩阵*/ ; 天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午abstract class Image public void setImp(ImageImp imp) (1) = imp; public abstract void parseFile(String fileName); protected (2) imp; ; cl
38、ass BMP extends Image public void parseFile(String fileName) /此处解析此处解析 BMP文件并获得一个像素矩阵对象文件并获得一个像素矩阵对象 m (3) ; / 显示像素矩阵显示像素矩阵m ; 天津工程师范学院天津工程师范学院真题真题20092009上半年下午上半年下午class GIF extends Image /此处代码省略此处代码省略 ; public class javaMain public static void main(String args) /在在 windows操作系统上查看操作系统上查看 demo.bmp 图
39、像文件图像文件 Image image1 = (4) ; ImageImp imageImp1 = (5) ; (6) ; image1.parseFile(demo.bmp); 天津工程师范学院天津工程师范学院20082008下半年下半年v上午上午v下午下午12分分30分分天津工程师范学院天津工程师范学院20082008下半年下半年v在面向对象系统中,用在面向对象系统中,用 (15) 关系表示一个较关系表示一个较大的大的“整体整体”类包含一个或多个较小的类包含一个或多个较小的“部分部分”类。类。 v(15)A. 泛化泛化 B. 聚合聚合 C. 概化概化 D. 合成合成天津工程师范学院天津工程
40、师范学院20082008下半年下半年v面向对象分析与设计中的面向对象分析与设计中的 (37) 是指一个模块在是指一个模块在扩展性方面应该是开放的,而在更改性方面应该扩展性方面应该是开放的,而在更改性方面应该是封闭的;而是封闭的;而 (38) 是指子类应当可以替换父类是指子类应当可以替换父类并出现在父类能够出现的任何地方。并出现在父类能够出现的任何地方。 v(37)A. 开闭原则开闭原则 B. 替换原则替换原则 C. 依赖原则依赖原则 D. 单一职责原则单一职责原则 v(38)A. 开闭原则开闭原则 B. 替换原则替换原则 C. 依赖原则依赖原则 D. 单一职责原则单一职责原则天津工程师范学院天
41、津工程师范学院20082008下半年下半年v在选择某种面向对象语言进行软件开发时,不需在选择某种面向对象语言进行软件开发时,不需要着重考虑的因素是,该语言要着重考虑的因素是,该语言(39)。 A. 将来是否能够占据市场主导地位将来是否能够占据市场主导地位 B. 类库是否丰富类库是否丰富 C. 开发环境是否成熟开发环境是否成熟 D. 是否支持全局变量和全局函数的定义是否支持全局变量和全局函数的定义 天津工程师范学院天津工程师范学院20082008下半年下半年v (40)限制了创建类的实例数量,而限制了创建类的实例数量,而 (41) 将将一个类的接口转换成客户希望的另外一个接口,一个类的接口转换成
42、客户希望的另外一个接口,使得原本由于接口不兼容而不能一起工作的那些使得原本由于接口不兼容而不能一起工作的那些类可以一起工作。类可以一起工作。 (40)A. 命令模式(命令模式(Command) B. 适配器模式(适配器模式(Adapter) C. 策略模式(策略模式(Strategy) D. 单例模式(单例模式(Singleton) (41)同上)同上B天津工程师范学院天津工程师范学院20082008下半年下半年v (42) 是指在运行时把过程调用和响应调用所需是指在运行时把过程调用和响应调用所需要执行的代码加以结合。要执行的代码加以结合。 v(42)A. 绑定绑定 B. 静态绑定静态绑定 C
43、. 动态绑定动态绑定 D. 继承继承 天津工程师范学院天津工程师范学院20082008下半年下半年v (43) 设计模式允许一个对象在其内部状态改变设计模式允许一个对象在其内部状态改变时改变它的行为。下图为这种设计模式的类图,时改变它的行为。下图为这种设计模式的类图,已知类已知类State为抽象类,则类为抽象类,则类 (44) 的实例代表的实例代表了了Context对象的状态。对象的状态。(43)A. 单件单件 B. 桥接桥接 C. 组合组合 D. 状态(状态(State)(44)A. Context B. concreteStateA C. Handle D. State 天津工程师范学院天
44、津工程师范学院20082008下半年下半年(43)A. 单件单件 B. 桥接桥接 C. 组合组合 D. 状态(状态(State) (44)A. Context B. concreteStateA C. Handle D. State 天津工程师范学院天津工程师范学院20082008下半年下半年v在在UML的各种视图中,的各种视图中, (45) 显示外部参与者观显示外部参与者观察到的系统功能;察到的系统功能; (46) 从系统的静态结构和动态从系统的静态结构和动态行为角度显示系统内部如何实现系统的功能;行为角度显示系统内部如何实现系统的功能; (47) 显示的是源代码以及实际执行代码的组织结构。
45、显示的是源代码以及实际执行代码的组织结构。A. 用例视图用例视图 B. 进程视图进程视图 C. 实现视图实现视图 D. 逻辑视图逻辑视图 A. 用例视图用例视图 B. 进程视图进程视图 C. 实现视图实现视图 D. 逻辑视图逻辑视图 A. 用例视图用例视图 B. 进程视图进程视图 C. 实现视图实现视图 D. 逻辑视图逻辑视图 天津工程师范学院天津工程师范学院20082008上半年上半年v采用采用 UML 进行软件设计时,可用进行软件设计时,可用 (16) 关系表关系表示两类事物之间存在的特殊示两类事物之间存在的特殊/一般关系,用聚集关一般关系,用聚集关系表示事物之间存在的整体系表示事物之间存
46、在的整体/部分关系。部分关系。 v(16)A. 依赖依赖 B. 聚集聚集 C. 泛化泛化 D. 实现实现 天津工程师范学院天津工程师范学院20082008上半年上半年v (37)是指把数据以及操作数据的相关方法组是指把数据以及操作数据的相关方法组合在同一个单元中,使我们可以把类作为软件中合在同一个单元中,使我们可以把类作为软件中的基本复用单元,提高其内聚度,降低其耦合度。的基本复用单元,提高其内聚度,降低其耦合度。面向对象中的面向对象中的(38)机制是对现实世界中遗传现机制是对现实世界中遗传现象的模拟,通过该机制,基类的属性和方法被遗象的模拟,通过该机制,基类的属性和方法被遗传给派生类。传给派
47、生类。 v(37)A. 封装封装 B. 多态多态 C. 继承继承 D. 变异变异 v(38)A. 封装封装 B. 多态多态 C. 继承继承 D. 变异变异 天津工程师范学院天津工程师范学院20082008上半年上半年v已知某子系统为外界提供功能服务,但该子系统中存已知某子系统为外界提供功能服务,但该子系统中存在很多粒度十分小的类,不便被外界系统直接使用,在很多粒度十分小的类,不便被外界系统直接使用,采用采用(41)设计模式可以定义一个高层接口,这个接设计模式可以定义一个高层接口,这个接口使得这一子系统更加容易使用;当不能采用生成子口使得这一子系统更加容易使用;当不能采用生成子类的方法进行扩充时
48、,可采用类的方法进行扩充时,可采用(42)设计模式动态地设计模式动态地给一个对象添加一些额外的职责。给一个对象添加一些额外的职责。(41)A. Facade(外观)(外观) B. Singleton(单件)(单件) C. Participant(参与者)(参与者)D. Decorator(装饰)(装饰) (42)同上)同上D天津工程师范学院天津工程师范学院FacadeFacade(外观)(外观)v外观模式(门面模式)外观模式(门面模式)天津工程师范学院天津工程师范学院FacadeFacade(外观)(外观)v外观模式(门面模式)外观模式(门面模式)天津工程师范学院天津工程师范学院FacadeF
49、acade(外观)(外观)v外观模式(门面模式)外观模式(门面模式)门面模式要求一个门面模式要求一个子系统的外部与其子系统的外部与其内部的通信必须有内部的通信必须有一个统一的门面对一个统一的门面对象进行。象进行。门面模式提供一个门面模式提供一个高层次的接口,使高层次的接口,使子系统更利于使用。子系统更利于使用。天津工程师范学院天津工程师范学院DecoratorDecorator(装饰)(装饰)v装饰模式可以在不使用创装饰模式可以在不使用创造更多子类的情况下,将造更多子类的情况下,将对象的功能加以扩展,是对象的功能加以扩展,是继承的一个替代方案。继承的一个替代方案。天津工程师范学院天津工程师范学
50、院DecoratorDecorator(装饰)(装饰)public class ConcreteComponent implements Componentpublic void method()/old codepublic class Decorator implements Componentprivate Component c ;public Decorator(Component c )this.c=c;public void method()c.method();天津工程师范学院天津工程师范学院DecoratorDecorator(装饰)(装饰)public class Conc