面向对象技术引论(复习题带术语题答案)

合集下载

C++面向对象技术复习题汇总(含答案)

C++面向对象技术复习题汇总(含答案)

C++面向对象技术复习题汇总(含答案)面向对象程序设计C++复习资料与答案第一、二、六、七章习题一、选择题1、系统约定C++源程序文件名的缺省的扩展名为()A、bccB、c++C、cppD、vcc2、面向对象的程序设计将数据与()放在一起,作为一个相互依存、不可分割的整体来处理。

A、对数据的操作B、信息C、数据隐藏D、数据抽象3、当一个函数无返回值时,函数的类型应定义为()A、voidB、任意C、intD、无4、对于C++的函数,正确的叙述是:A、函数的定义不能嵌套,但函数的调用可以嵌套B、函数的定义不能嵌套,但函数的调用不能嵌套C、函数的定义和调用都不能嵌套D、函数的定义和调用都可以嵌套5、下列语句中错误的是()A、int *p=new int(10);B、int *p=new int[10]C、int *p=new int;D、int *p=new int[40](0);6、假设已经有定义:const char *const name=”chen”;,下面的语句中正确的是:()A、name[3]=’a’; B、name=”lin”;C、name=new char[5]; D、cout<<name[3];< bdsfid="94" p=""></name[3];<>7、假设已经定义:char *const name=”chen”;, 下面的语句中正确的是:()A、name[3]=’q’; B、name=”lin”;C、name=new char[5]; D、name=new char(‘q’);8、假设已经定义:const char *name=”chen”;, 下面的语句中错误的是:()A、name[3]=’q’; B、name=”lin”;C、name=new char[5]; D、name=new char(‘q’);9、下面的类型声明中正确的是:( )A、int &a[4];B、int &*p;C、int &&qD、int i,*p=&i;10、假设定义了函数模板()templateT max(T x,T y){ return(x>y)?x:y;}并定义了int i;char c;错误的调用语句是:()A、max(i,i)B、max(c,c)C、max((int)c,i);D、max(i,c)11、模板的使用是为了()A、提高代码的可重用性B、提高代码的运行效率C、加强类的封装性D、实现多态性12、设有二个语句:int x[‘a’];cin>>x;则编译器认为()A、说明语句int x[‘a’]错B、二个语句都错C、语句cin>>x 错D、二个语句正确,没有语法错13、设有语句:void f(int a[10],int &x);int y[10],*py=y,n;则对函数f的正确调用语句是( )A、f(py[10],n);B、f(py,n)C、f(*py,&n)D、f(py,&n)14、在C++中实现封装是借助于()A、枚举B、类C、数组D、函数15、对于下面几个函数:(1) void f(int x,float y) {…… }(2) int f(int a,float b){…… }(3) int f(int i,int j){…… }(4) float k(int x){…… }是重载函数。

面向对象考试题目和答案

面向对象考试题目和答案

面向对象考试题目和答案一、单项选择题(每题2分,共20分)1. 面向对象程序设计中,对象的状态由()来表示。

A. 属性B. 方法C. 消息D. 类答案:A2. 在面向对象程序设计中,封装的目的是()。

A. 隐藏对象的属性B. 隐藏对象的方法C. 隐藏对象的实现细节D. 隐藏对象的消息答案:C3. 面向对象程序设计中,继承的主要优点是()。

A. 重用代码B. 减少代码量C. 提高程序的可读性D. 所有以上选项答案:D4. 在面向对象程序设计中,多态性是指()。

A. 一个对象可以有多个类B. 一个类可以有多个对象C. 一个消息可以有多个行为D. 一个类可以有多个属性答案:C5. 在面向对象程序设计中,以下哪个不是类的组成部分()。

A. 属性B. 方法D. 函数答案:D6. 在面向对象程序设计中,以下哪个概念不是面向对象的核心概念()。

A. 封装B. 继承C. 多态D. 过程答案:D7. 在面向对象程序设计中,以下哪个概念是面向对象的核心概念之一()。

A. 函数B. 过程C. 消息D. 抽象8. 在面向对象程序设计中,以下哪个不是类的成员()。

A. 属性B. 方法C. 函数D. 消息答案:C9. 在面向对象程序设计中,以下哪个不是类的属性()。

A. 私有属性B. 保护属性C. 公共属性D. 全局属性答案:D10. 在面向对象程序设计中,以下哪个不是类的访问修饰符()。

B. 保护C. 公共D. 静态答案:D二、多项选择题(每题3分,共15分)1. 面向对象程序设计中,以下哪些是类的属性()。

A. 私有属性B. 保护属性C. 公共属性D. 全局属性答案:ABC2. 面向对象程序设计中,以下哪些是类的成员()。

A. 属性C. 函数D. 消息答案:ABD3. 面向对象程序设计中,以下哪些是类的访问修饰符()。

A. 私有B. 保护C. 公共D. 静态答案:ABC4. 面向对象程序设计中,以下哪些是面向对象的核心概念()。

面向对象技术引论(复习题)[参考解答]

面向对象技术引论(复习题)[参考解答]

《面向对象技术(jìshù)引论》复习题一、概念(gàiniàn)与术语1. 对象(duìxiàng):在现实世界中,对象定义为:问题的概念和抽象的或具有明确边界(biānjiè)和意义的事物;在数据世界中,对象定义为:一组数据以及(yǐjí)施加于这组数据上的一组操作;从系统的观点出发,我们可以给对象作如下定义:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位(单元),一个对象是由一组属性和对这组属性进行操作的一组服务构成的。

2.持久对象:生存期可以超越程序的执行时间而长期存在的对象称为持久对象。

换句话说:一个对象在程序运行结束后仍继续存在,则称该对象是持久的。

2.主动对象:主动对象是一组属性和一组操作(服务)的封装体,其中至少有一个操作不需要接收消息就能主动执行(称为主动服务)。

3.被动对象:被动对象(Passive object)是指其内部的操作需要通过外部消息驱动才能执行的对象。

可以看出被动对象必须工作在消息驱动环境中。

4.类:定义1 一组具有相同性质(属性和操作)的对象的抽象。

定义2 类是对一组具有相同属性、操作、关系和语义的对象的描述。

定义3 具有相同属性和容许操作的一组对象的一般描述称为类。

5.主动类:主动类的对象至少拥有一个进程或线程,因此它能够自主执行(能够启动控制活动)。

注意:主动类的对象所描述的元素的行为与其他元素的行为并发,这是它与一般类的唯一区别。

6.接口:接口是描述一个类或构件的一个服务的操作集。

因此,接口描述元素的外部可见行为。

接口描述了一组操作的规格,而不是操作的实现。

图形上,用一个带有名称的圆表示接口。

7.用况:用况是对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者有价值而且可观察的结果。

用况用于对系统语境和系统需求建模。

图形上,用一个包含名称的实线椭圆表示用况。

java面向对象考试题及答案

java面向对象考试题及答案

java面向对象考试题及答案一、选择题(每题2分,共10分)1. 在Java中,以下哪个关键字用于定义一个类?A. classB. structC. interfaceD. enum答案:A2. 以下哪个选项是Java中类的成员变量?A. 方法B. 构造函数C. 属性D. 包答案:C3. 在Java中,哪个关键字用于实现类的继承?A. extendsB. implementsC. importD. package答案:A4. 在Java中,以下哪个关键字用于定义一个接口?A. classB. structC. interfaceD. enum答案:C5. 在Java中,以下哪个关键字用于定义一个枚举类型?A. classB. structC. enumD. interface答案:C二、填空题(每题2分,共10分)1. 在Java中,一个类可以继承另一个类的______方法。

答案:public2. 当一个类实现了一个接口,它必须提供接口中所有方法的______实现。

答案:具体3. Java中的______关键字用于定义一个包。

答案:package4. 在Java中,______关键字用于声明一个方法,该方法没有返回值。

答案:void5. 在Java中,______关键字用于声明一个方法,该方法返回一个布尔值。

答案:boolean三、简答题(每题5分,共20分)1. 简述Java中构造函数的作用。

答案:构造函数是类的特殊方法,用于在创建对象时初始化对象的状态。

它具有与类同名的名称,并且没有返回类型。

2. 描述Java中接口和抽象类的区别。

答案:接口是完全抽象的,不能包含任何实现细节,而抽象类可以包含实现细节。

接口中的方法默认是public和abstract的,而抽象类可以有非抽象方法。

一个类可以实现多个接口,但只能继承一个抽象类。

3. 什么是Java中的多态性?请举例说明。

答案:多态性是指允许不同类的对象对同一消息做出响应的能力。

(完整版)武汉理工大学《面向对象技术及应用试题》(带答案)

(完整版)武汉理工大学《面向对象技术及应用试题》(带答案)

(完整版)武汉理工大学《面向对象技术及应用试题》(带答案)《面对对象技术及应用》试题一、多选题:下列题中有一个或多个正确答案,请将正确答案的编号填在括号里。

(每题2分,共40分)1.状态图中常用的动作有(ABC )A.动作B.入口动作C.出口动作D.触发动作2.UML中表示类之间“关系”的视图有(ABC )A.关联B.泛化C.依靠D.实现3.用例描述中包含的内容有(ABCD )A.发起用例的参加者B.用例的前置条件C.用例的后置条件D.从用例中获益的参加者4.类之间的关系包括(BCD )A.链B.继承C.多重性D.聚拢5.完整的类可视化表示包括元素(ABC )A.职责和约束B.属性C.操作D.接口6.在UML提供的图中,用于描述系统与外部系统及用户之间的交互的是( D )A)用例图B)类图C)对象图D)部署图7.UML背后的两个分量级概念是。

(BD )A)类B)用例C)面对过程D)面对对象8.用例是从____的观点对系统行为的一个描述。

( A )A)用户B)类C)系统D)对象9.关于用例对于系统开发来说的存在价值,以下说法正确的是。

(ABD )A)便于从用户的观看角度收集系统需求B)使系统更符合用户的需求C)禁止了分析员与用户的沟通D)便于分析员与客户和用户沟通10.以下哪些标记符在活动图中存在。

(BC )A)大事触发器B)分叉与汇集C)泳道D)决策点11.用UML建立业务模型是理解企业业务过程的第一步。

业务人员饰演业务中的角XXX及其交互方式,表示企业业务的工作流。

这种图显示出工作流中的步骤、决策点,以及完成每一步骤的角群和对象。

这种图是以下哪种图。

( A )A)活动图B)交互图C)用例图D)状态图12.面对对象理论中,对象之间发送信号,在UML状态图里就是。

( B )A)入口动作B)大事。

5面向对象复习题

5面向对象复习题

一、填空题1、面向对象的特征是、、和。

2、面向对象有三个基本要素,它们是、和。

3、类具有属性,它是的抽象,用来描述类的属性。

4、类具有操作,它是的抽象,用和实现来描述。

5、在类层次中,子类只继承一个父类的属性和方法,则称为。

子类继承了多个父类的属性和方法,则称为。

6、OMT方法是RumBaugh等人提出的面向对象开发方法。

开发工作的基础是对,然后围绕这些对象使用来进行独立于语言的设计。

7、Coad和Y ourdon方法完成了从需求角度出发的认定工作,面向对象设计可以在此基础上,从设计的角度进一步进行的认定。

8、Booch方法通过分析问题陈述正文,将其中的映射为对象,将其中的映射为方法,从而为对象和方法的认定提供了一种简单的策略,虽然Booch方法原是面向的语言,但仍处于面向对象开发方法的奠基性地位。

9、不仅统一了Booch方法、OMT方法、OOSE方法的表示方法,而且对其作了进一步的发展,最终成为为国际对象组织(OMG)认可的同一建模语言。

10、在客观世界中有若干类,这些类之间有一定的结构关系。

通常有两种主要的结构关系,即和整体-部分关系。

11、在面向对象设计中存在三种内聚,即、和。

二、单选填空题1、对象是面向对象开发方法的基本成分,每个对象可用它本身的一组( )和它可以执行的一组操作来定义。

A. 服务B. 参数C. 属性D. 调用2、在面向对象方法中,把一组具有相同数据结构和相同操作的对象的集合定义为( )。

此定义包括一组数据属性和在数据上的一组合法操作。

A. 聚合B. 类C. 结构D. 主题3、面向对象技术的许多强有力的功能和突出的优点都来源于把系统组织成一个类的层次结构。

一个类的上层可以有父类,下层可以有子类。

这种系统的类层次结构的一个重要性质是( ),通过它,一个类可共享其父类的全部数据和操作。

A. 传递性B. 复用性C. 并行性D. 继承性4、一个面向对象软件的体系结构通过它的成分对象及各对象之间的关系来确定,与传统的结构化开发方法相比,它具有( )的优点。

c#面向对象试题及答案

c#面向对象试题及答案

一、选择题:1、下列关于类的描述中,错误的是( A )。

A.类就是C语言中的结构类型B.类是创建对象的模板C.类是抽象数据类型的实现D.类是具有共同行为的若干对象的统一描述体2、下列常量中,不是字符常量的是( B )。

A.'\n' B."y"C.'x' D.'\7'3、下列表达式中,其值为0的是( A )。

A.5/10 B.!0C.2>4?0:1 D.2&&2||04、下列关于数组维数的描述中,错误的是( C )。

A.定义数组时必须将每维的大小都明确指出B.二维数组是指该数组的维数为2C.数组的维数可以使用常量表达式D.数组元素个数等于该数组的各维大小的乘积5、下列关于字符数组的描述中,错误的是( D )。

A.字符数组中的每一个元素都是字符B.字符数组可以使用初始值表进行初始化C.字符数组可以存放字符串D.字符数组就是字符串6、已知:int a[5] = {1, 2, 3, 4}; 下列数组元素值为2的数组元素是( B )。

A.a[0] B.a[1]C.a[2] D.a[3]7、下列while循环语句的循环次数是( A )。

while(int i(0)) i--;A.0 B.1C.2 D.无限8、已知:int a[ ]={1,2,3,4,5},*p=a;在下列数组元素地址的表示中,正确的是( C )。

A.&(a+1) B.&(p+1)C.&p[2] D.*p++9、已知:int a=1,b=2,*p[2];下列表达式中正确的是( C )。

A.p=&a B.p=&bC.p[0]=&a,p[1]=&b D.p[ ]={&a,&b};10、当一个函数没有返回值时,该函数类型应说明为( A )。

A.void B.intC.无D.任意11、下列关于类的定义格式的描述中,错误的是( C )。

最新面向对象技术引论(复习题)[参考解答]

最新面向对象技术引论(复习题)[参考解答]

《面向对象技术引论》复习题一、概念与术语1. 对象:在现实世界中,对象定义为:问题的概念和抽象的或具有明确边界和意义的事物;在数据世界中,对象定义为:一组数据以及施加于这组数据上的一组操作;从系统的观点出发,我们可以给对象作如下定义:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位(单元),一个对象是由一组属性和对这组属性进行操作的一组服务构成的。

2.持久对象:生存期可以超越程序的执行时间而长期存在的对象称为持久对象。

换句话说:一个对象在程序运行结束后仍继续存在,则称该对象是持久的。

2.主动对象:主动对象是一组属性和一组操作(服务)的封装体,其中至少有一个操作不需要接收消息就能主动执行(称为主动服务)。

3.被动对象:被动对象(Passive object)是指其内部的操作需要通过外部消息驱动才能执行的对象。

可以看出被动对象必须工作在消息驱动环境中。

4.类:定义1 一组具有相同性质(属性和操作)的对象的抽象。

定义2 类是对一组具有相同属性、操作、关系和语义的对象的描述。

定义3 具有相同属性和容许操作的一组对象的一般描述称为类。

5.主动类:主动类的对象至少拥有一个进程或线程,因此它能够自主执行(能够启动控制活动)。

注意:主动类的对象所描述的元素的行为与其他元素的行为并发,这是它与一般类的唯一区别。

6.接口:接口是描述一个类或构件的一个服务的操作集。

因此,接口描述元素的外部可见行为。

接口描述了一组操作的规格,而不是操作的实现。

图形上,用一个带有名称的圆表示接口。

7.用况:用况是对一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者有价值而且可观察的结果。

用况用于对系统语境和系统需求建模。

图形上,用一个包含名称的实线椭圆表示用况。

8.协作:协作定义了一个交互,它是由一组共同工作以提供某协作行为的角色和其他元素构成的一个群体,这些协作行为大于所有元素的各自行为的综合。

因此协作有结构、行为和维度。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象技术引论》复习题
一、概念与术语
1. 对象:(1)从现实世界:问题的概念和抽象的或具有明确边界和意义的事物
(2)从数据世界:一组数据以施加在这组数据上的一组操作
(3)从系统观点:对象是系统中用来描述客观事物的一个实体,它是构成系统的一个基本单位,一个对象是由一组属性和对整个属性进行操作的一组服务构成的。

(P19)2.持久对象:生存期可以超越程序的执行时间而长期存在的对象。

(P24)
2.主动对象(3种解释):(1)一个能够启动消息传递的对象。

(2)一个能为其他对象提供服务的对象,能被拷贝成代理,并且需要并发控制。

(3)其方法(操作)由自身状态的改变而激活。

(P25)
3.被动对象:其内部的操作需要通过外部消息驱动才能执行的对象。

(P25)
4. 类:一组具有相同性质(属性和操作)的对象的抽象。

(P20)
5. 主动类:主动类的对象至少拥有一个进程或线程,因此它能够自主执行(P65)
6. 接口:描述一个类或构件的一个服务的操作集(P64)
7. 用况:用况是对业务过程所包含的一组动作序列的描述,系统执行这些动作将产生一个对特定的参与者有价值且可观察的结果。

(P42)
8. 协作:协作定义了一个交互,它是由一组共同工作以提供某协作行为的角色和其他元素构成的一个群体,这些协作行为大于所有元素的各自行为的综合(P64)
9. 构件:构件是系统中物理的、可替代的部件,它遵循且提供一组接口的实现。

(P65)
10. 节点:节点也是物理的,是在系统运行时存在的物理元素,它表示了一种可计算的资源,通常至少有一些记忆能力和处理能力。

(P65)
11. 一般类和12. 特殊类:如果类A具有类B的全部属性和服务(操作),而且具有自己特有的某些属性和服务,则类A叫做类B的特殊类,B叫做A的一般类。

(P22)
13. 关联(关系):事物(类)之间的一种结构关系,或者说是对象之间连接的抽象,用来描述对象之间的相互作用(P67)
14. 关联类:关联类是一种具有关联特性和类特性的建模元素,可以将其看出是具有类特性的关联,或者具有管理特征的类(P116)
15. 依赖(关系):依赖是两个事物之间的一种语义关系,其中的一个事物的改变会影响另一个事物,反之未必(P106)
16. 泛化(关系):泛化是一种“特殊/一般”关系,即特殊事物和一般事物之间的关系。

(P108)
17. 实现(关系):类元之间的语义关系(P16)(看不懂~~ - -!)
18. 链和链属性:对象之间的关联或相互作用表现出不同的类的对象的实例之间的实际的或概念上的联系,称为链。

链属性:??(P110)
19. 聚合:聚合用来表示事物时间的“整体/部分”关系,“整体”事物是一个较大的事物,它是由多个”部分“事物组成的。

(P113-114)
20. 问题域:是指特定应用系统的应用领域,即在现实世界中由该系统进行处理的业务范围。

(P47)
21. 系统责任:指系统应该具备的职能。

(P47)
22. 消息:消息定义为向对象发出的服务请求(P23和P127)
23. 交互:交互是发生在对象之间后对象内部的消息传递行为(P66)
24. 事件:一个触发行为成为一个事件,换句话说,所谓事件是指特定时刻内发生的动作。

(P139)
25. 事件流:??没找到~
26. 状态:指在对象的生命期中的一个条件或状况(通过属性值体现),在此期间,对象将满足某些条件、执行某些活动或等待某些事件。

(p141)
27. 状态机:状态机描述了一个对象或一个交互在生命期内响应事件所经历的状态序列,即描述其状态变迁。

(P66)
28.封装:封装是对拥有结构和行为的一个对象的元素进行划分的过程,封装完成抽象的契约接口和对象实施的分离(P28)
29. 继承:特殊类拥有一般类的全部属性和服务(操作),称为特殊类对一般类的继承(P29)
30 多态:在一般类中定义的属性被特殊类继承之后,可以具有不同的数据类型;同理,一般类中定义的操作,可以在特殊类中具有不同的实现方法。

(P31)
31. 抽象:抽象即指通过思考进行分离的行为。

另一种解释:表示某事物的本质特征(P27)
32. 角色:当一个类位于关联的某一端时,该类(的某些实例)就在这个关系中扮演了特定的角色。

(这个算??)(P111)
33. 限定词(修饰关联):限定词是关联的一个特定的属性,它的值划分了一个关联与一个对象相关的对象集。

(p116)
34. UML的规则(命名、范围、可见性等):P70-P71太多了~不想打~
35. UML的公共机制(详述、修饰、扩展机制(构造型、标记值、约束))P72-74
二、思考题
1.为什么应用对象技术可以改变软件制造(生产)方式?
2.试述建模的重要性,为什么建模可以降低系统实现的复杂度。

3. 为什么面向对象方法能较好地管理复杂性并增强伸缩性。

4.何谓“软件复用”,为什么说面向对象技术对“软件复用”提供了卓有成效的支持?
5. “用况驱动的、迭代式的、增量”的开发方法的要点、优点、时间盒。

6. UML的三大建模元素(事物、关系、图)、各种结构事物的定义和用途。

7.“计划和细化”阶段的主要工作和主要活动。

8.“构造阶段”的主要工作和主要活动。

9.面向对象有哪些要素?为什么说“封装”是其最重要的要素?
10.何谓链属性,试述链属性不应置入关联两端的某一对象类中作为其属性的理由,请举例说明之。

11.系统分析阶段如何识别类和排除虚假类?(分别简述语法分析法和现实分析法的要点)。

12.系统分析阶段如何识别关联和排除虚假关联?(分别简述语法分析法和现实分析法的要点)。

13.简述描述类的基本特征(名称、属性等)并举例说明之。

14.软件维护的主要工作是什么,为什么说每一次维护可能又是一个较小的应用开发过程?15.为什么“继承”可以简化对问题的认识?
16. 面向对象系统中通常存在着持久对象、主动对象、和被动对象等三种对象,给出这三种对象的定义,并举例说明之。

17.解释“多态性”的基本含义,为什么“多态性”的实际应用必须建立在类的一般化层次结构上?
18.列举引起需求变化的主要因素,面向对象方法如何应对需求的不断变化?
19.何谓“多态性”,试举例说明“多态性”的应用。

20. 简述软件维护的主要工作,并说明其重要性。

三、设计部分
1. 根据给定的领域和场景写出问题陈述、建立用况模型,针对指定的用况,写出事件流。

2. 设计为词汇建模的类图、为数据库建模的类图、为简单协作建模的类图。

3. 按时间顺序对控制流建模型的步骤,以指定用况作为交互语境设计顺序图。

4. 按对象组织对控制流建模型的步骤,以指定用况作为交互语境设计协作图。

5. 对对象的生命期建模的策略和步骤,为指定类设计状态图。

相关文档
最新文档