数据库应用基础学习指导
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

第5章 面向对象程序设计基础

5.1 判断题

1.在面向对象的程序设计中,程序是由各种对象组成的。

【答案】√

【分析】面向对象的程序设计方法是把程序看做相互协作而又彼此独立的对象的集合。

2.Visual FoxPro中的对象主要分为两大类:可视类和不可视类。

【答案】×

【分析】Visual FoxPro提供了许多基类,这些基类主要分为两大类:控件类对象和容器类对象。

3.类是构造和建立对象的模板,决定了对象的外观和行为;而对象则是类的实例化,是类的表现形式。

【答案】√

4.事件是对象能识别和响应的特定动作,事件是系统预先定义的,我们也可以为对象添加新事件。

【答案】×

【分析】用户不能自定义添加新的事件,但可以添加新的方法。

5.命令:DO FORM MYFORM表示运行表单MYFORM。

【答案】√

6.数据环境是一种对象,它可以包含与表单相互作用的表、视图和查询。

【答案】√

【分析】数据环境也是一种对象,有自己的属性、事件和方法。

7.每一个表单都包括一个数据环境,在表单运行时可以自动打开和关闭数据环境中的表。

【答案】√

8.数据环境中的表及其字段都是对象,可以像引用其他对象那样引用表及其字段。

【答案】√

9.Visual FoxPro中的所有对象都有与之对应的记数属性和收集属性。

【答案】×

【分析】Visual FoxPro中只有容器类对象有与之对应的记数属性和收集属性。

10.对象的引用有绝对引用和相对引用两种方式,This既可以用在绝对引用中,也可以用在相对引用中。

【答案】×

【分析】This只能用在相对引用中,代表当前对象。

11.WITH-ENDWITH结构是表单设计中用到的一种循环结构。

【答案】×

【分析】利用WITH-ENDWITH结构可以简化设置对象的多个属性,但不是循环结构。

12.Name属性是事件或方法过程代码中唯一标识控件的名称,不可以在属性窗口中修改。

【答案】×

【分析】Name属性既可以在设计表单时通过属性窗口修改,也可以在事件代码中修改。

13.表单中对象的属性,可以在表单设计时直接在属性窗口中设置,也可以在事件代码中改变。

【答案】√

14.Visual FoxPro中表单和控件的各种事件必须由用户触发,如用户单击鼠标、运行表单等。

【答案】×

【分析】表单和控件的事件可以由3种方式触发。有些可以由用户触发,如命令按钮和Click事件;有些可以由系统触发,如计时器的Timer事件;还有些可以由程序代码触发。

15.如果控件的Enabled属性被设置为假(.F.),则控件不会响应用户或系统的任何触发动作。

【答案】√

16.若要在列表框、组合框的值改变时执行某段代码,应该将该段代码编写在其Click事件中。

【答案】×

【分析】一般应该写在列表框或组合框的InterActiveChange事件中。

17.表单中所有控件的Init事件是在表单的Init事件之后执行的。

【答案】×

【分析】表单中所有控件的Init事件是在表单的Init事件之前执行的。

18.若从Valid事件返回“假”(.F.),则不能将焦点从控件上移走。

【答案】√

【分析】若某一对象的Valid事件返回值是“假”(.F.),则焦点不能从该控件上移走,只有当Valid事件返回值为真时焦点才能离开。

19.用户可以给表单和表单上所有对象添加新的属性。

【答案】×

【分析】用户可以自己添加新的属性,但该属性是属于表单(如果有表单集则属于表单集)的,而不是属于某一个对象的。

20.要在表单中的各对象之间传递参数,可以通过给表单添加新属性的方法来实现。

【答案】√

【分析】要在表单中的各对象之间传递参数,可以通过给表单添加新属性的方法来实现;还可以通过DO FORM <表单> WITH <变量表达式>命令实现。

5.2 选择题

1.下面关于类和对象的叙述中,错误的是( )。

A.组成程序的对象划分为各种对象类

B.类是构造和建立对象的模板,决定了对象的外观和行为

C.对象是类的实例化,是类的表现形式

D.类也是对象的父容器

【答案】D

2.下面关于容器类和控件类的叙述中,错误的是( )。

A.容器类对象可以包含其他对象,这种包含通常是多层嵌套的

B.控件类对象不允许向控件中添加其他对象

C.容器类对象和控件类对象可以相互转换

D.Visual FoxPro提供的基类主要分为容器类和控件类

【答案】C

3.下面关于属性、方法和事件的叙述中,正确的是( )。

A.方法是一段能完成特定操作的程序代码,可以独立于对象单独运行

B.属性是对象所表现出来的外部特征,不可以改变

C.事件是对象能识别和响应的特定动作,是系统预定义好的

D.在新建一个表单时,可以添加新的属性、方法和事件

【答案】C

【分析】用户可以添加新的属性和方法,但事件是不能添加的。

4.在Visual FoxPro系统中,以下关于事件的叙述正确的是( )。

A.鼠标单击是一个事件动作

B.事件只能通过用户的操作行为触发

C.事件不能适用于多种控件

D.当事件发生时,只执行包含在事件过程中的一部分代码

【答案】A

【分析】事件不但可以由用户的操作行为触发,还可以由系统或程序代码触发。

5.在关闭当前表单的程序代码Thisform.Release中,Release是表单对象的( )。

A.标题 B.属性 C.事件 D.方法

【答案】D

6.在Visual FoxPro中,表单文件和表单备注文件的扩展名分别是( )。

A..dbf和.dct B..scx和.sct C..dbc和.dct D..dbc和.dbf

【答案】B

7.下面关于数据环境的叙述中,错误的是( )。

A.数据环境中包含的是与表单有联系的表、视图以及表之间的关系

B.数据环境是一个对象,有自己的属性、方法和事件

C.使用数据环境可以很方便地把控件与表中的字段关联在一起

D.放入数据环境中的表需要用命令来打开

【答案】D

【分析】放入表单数据环境中的表,可以随着表单的打开而自动打开。

8.决定选项按钮组中单选按钮个数的属性是( )。

A.ButtonCount B.Buttons C.Value D.ControlSource

【答案】A

【分析】ButtonCount是选项按钮组这一容器类对象的记数属性。

9.如果ColumnCount属性设置为-1,则在运行时,表格将包含与其绑定的表中字段的列数是( )。

A.出错 B.0列 C.1列 D.表的实际列数

【答案】D

10.下面关于对象引用的叙述中,正确的是( )。

A.在表单中知道对象的名称就可以找到该对象

B.对象的绝对引用方式都可以换成相对引用方式

C.表单的绝对引用都是从Thisform开始的

D.对象的相对引用与当前所在位置没有关系

【答案】B

11.在表单Form1下有一个命令按钮(Command1),在该命令按钮中要将表单的背景色改变为绿色,正确命令是( )。

A.Form1.BackColor=RGB ( 0,255,0 )

B.Parent.BackColor=RGB ( 0,255,0 )

C.This.BackColor=RGB ( 0,255,0 )

D.Thisform.BackColor=RGB ( 0,255,0 )

【答案】D

【分析】A中的Form1找不到,改成Thisform就正确了;B缺少This.;C改变的是Command1的背景色;D是正确的。

12.下面关于属性设置的叙述中,错误的是( )。

A.对象的属性既可以在属性窗口中设置,也可以在程序代码中设置

B.属性窗口中以斜体显示的属性是只读属性,不能修改

C.用对象快捷菜单中的“属性”命令可以很方便地进入属性设置窗口

D.在属性设置窗口中不能切换对象。

【答案】D

【分析】在属性窗口中可以很方便地切换不同的对象。

13.对于表单及控件的绝大多数属性,其类型通常是固定的,Caption属性和Enabled属性只能用来分别接收( )。

A.字符型和数值型 B.字符型和逻辑型 C.数值型和逻辑型 D.数值型和字符型

【答案】B

14.为了修改表单的标题,应设置表单的( )属性。

A.Caption B.Name C.Value D.FontName

【答案】A

15.下面关于事件代码的编辑与响应的叙述中,错误的是( )。

A.双击对象可以快捷地进入该对象的事件代码编辑窗口

B.事件代码的响应大部分是由用户的动作触发的

C.计时器的Timer事件代码是由系统自动触发的

D.当对象的Enabled属性设置为“.F.”时,用户仍然可以触发它的事件代码

【答案】D

【分析】当对象的Enabled属性设置为“.F.”时,用户是无法触发它的事件的。