1、国家二级( JAVA)笔试模拟试卷 53及答案与解析 1 下列叙述正确的是 ( )。 ( A)非空循环队列的队尾指针等于排头指针时,也可以进行入队运算 ( B)循环队列为空时可以进行退队运算 ( C)退队运算后队列长度减 1 ( D)入队运算就是将新元素插入到队尾指针指向的位置 2 下列叙述不属于线性链表较之线性表顺序存储结构的优点的是 ( )。 ( A)线性链表存储方式简单 ( B)线性链表运算效率高 ( C)线性链表的存储空间易于扩展 ( D)线性链表便于存储空间的动态分配 3 设有下列二 叉树 (如下图所示 ) 对此二叉树中序遍历的结果是 ( )。 ( A) ABDGCEHIF ( B)
2、 DGBAHEICF ( C) GDBHIEFCA ( D) ABCDEFGHI 4 若要求尽可能快地对实数数组进行稳定的排序,则应选 ( )。 ( A)快速排序 ( B)堆排序 ( C)归并排序 ( D)基数排序 5 在所有排序方法中,关键字比较的次数与记录的初始排列次序无关的是 ( )。 ( A)希尔排序 ( B)冒泡排序 ( C)插入排序 ( D)选择排序 6 函数重载是指 ( )。 ( A)两个或两个以上的函数取相同的函数名,但形参的个数或类型不同 ( B)两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同 ( C)两个以上的函数名字不同,但形参的个数或类型相同 (
3、D)两个以上的函数取相同的函数名,并且函数的返回类型相同 7 在结构化方法中,软件功能分解属于下列软件开发中的哪个阶段 ? ( ) ( A)详细设计 ( B)需求分析 ( C)总体设计 ( D)编程调试 8 在关系代数中,对一个关系投影操作以后,新关系的元组个数跟原来关系的元组个数相比 ( )。 ( A)小于 ( B)小于或等于 ( C)等于 ( D)大于 9 关系数据库的概念模型是 ( )的集合。 ( A)关系模型 ( B)关系模式 ( C)关系子模式 ( D)存储模式 10 如果对一个关系实施了一种关系运算后得到了一个新的关系,而且新的关系中属性个数少于原来关系中属性个数,这说明所实施的运
4、算关系是 ( )。 ( A)选择 ( B)投影 ( C)连接 ( D)并 11 下面有关 Java代码安全性的叙述, ( )是对的。 :字节码校验器加载查询执行需要的 所有类。 :运行时解释器执行代码。 :在运行时,字节码被加载,验证后在解释器里面运行。 :类加载器通过分离本机文件系统的类和从网络导入的类增加安全性。 ( A) 、 ( B) 、 、 ( C) 、 、 ( D) 、 12 Java程序中的路径设置是 ( )。 ( A) setPath ( B) setenv ( C) setClassPath ( D) setClass 13 有如下程序: public class MethTe
5、st static int Var1=100; int Var2=200; public static void main(String args) Var1=10; MethTest Obj1=new MethTest(); MethTest Obj2=new MethTest(); Obj1.Var1 +; System.out.println(Obj1.Var1); Obj2.Var1 +; System.out.println(Obj2.Var1); MethTest.Var1 +; System.out.println(Obj1.Var1); Obj1.Var2 +; System.
6、out.println(Obj1.Var2); 0bj2.Var2 +; System.out.println(Obj2.Var2); 程序的运行结果为 ( )。 ( A) 11 12 13 201 201 ( B) 101 102 103 201 201 ( C) 11 12 13 201 202 ( D) 10 10 10 201 201 14 在没有为类定义任何构造方法时, Java编译器会自动建立一个 ( )的构造方法。 ( A)不带参数 ( B)带一个参数 ( C)带多个参数 ( D)默认参数 15 以下说法正确的是 ( )。 ( A) protected定义的内容允许被对象存取 (
7、 B) private定义的内容允许被对象存取 ( C) public定义的内容允许被对象存取 ( D) public定义的内容不允许被对象存取 16 下列有关变量的描述中不正确的是 ( )。 ( A)变量属性是用来描述变量作用域的 ( B)局部变量作用域只能是它所在方法的代码段 ( C)类变量能在类的方法中声明 ( D)类变量的作用域是整个类 17 按照运算符的功能划分,运算符 =属于 ( )。 ( A)扩展赋值运算符 ( B)二元运算符 ( C)算术运算符 ( D)关系运算符 18 下列代码段的输出结果为 ( )。 public class priority public static v
8、oid main(String args ) int a=10,b=4,c=20,d=6; System.out.println(a+c%B) ; System.out.println(a+*b+c-D) ; ( A) 10 40 ( B) 10 96 ( C) 80 60 ( D) 96 60 19 有如下数组声明 “int value30;”,下标值引用错误的是 ( )。 ( A) value30 ( B) value0 ( C) value10 ( D) value20 20 以下选项中,属于合法语句的是 ( )。 ( A) char nm10; nm=“C Program“; ( B)
9、 char str110=“computer“,str210; str2=str1; ( C) char str7=“string!“; ( D) char sp=“Hello!“; 21 以下程序输出结果为 ( )。 class test 2 public static void main(String args) int n = 7; n =3; n=n n =2; System.out.println(n); ( A) 0 ( B) -1 ( C) 14 ( D) 64 22 以下各项中不属于 Java语言流程控制结构的是 ( )。 ( A)分支语句 ( B)跳转语句 ( C)循环语句
10、( D)赋值语句 23 下列程序运行后的输出结果是 ( )。 public class Sun public static void main(String args ) int a,b; a=0; b=0; for(int m=1;m =10;m+) a=a+1; b=0; for(int j=1;j =10;j+) a=a+1; b=b+2; System.out.println(a+“,“+B) ; ( A) 10,20 ( B) 20110 ( C) 110,20 ( D) 200110 24 下列有关线程的描述中错误的是 ( )。 ( A) Java中的每一个线程都属于某个线程组 (
11、 B)线程只能在其创建时设置所属的线程组 ( C)线程创建之后,可以从一个线程组转移到另一个线程组 ( D)新建的线程默认情况下属于某父线程所属的线程组 25 下面程序输出的结果是什么 ? ( ) public class Quiz2 public static void main(String args) try throw new MyException(); catch(Exception e) System.out.println(“Its caught!“); finally System.out.println(“Its finally caught!“); class MyExc
12、eption extends Exception ( A) Its finally caught! ( B) Its caught! ( C) Its caught!/Its finally caught! ( D)无输出 26 以下各项说法中错误的是 ( )。 ( A)可串行化的类必须实现 Sefializable接口 ( B)可串行化的类中的静态变量可以不被串行化 ( C) private数据访问权限能够限制数据不被串行化 ( D)对象串行化使用 Java语言提供的默认机制 27 如要求读取大文件的中间一段内容,最方便的是采用下列哪种流来操作 ? ( ) ( A) File stream
13、( B) Pipe stream ( C) Filter stream ( D) Random stream 28 下列方法中不属于 KeyListener接口中方法的是 ( )。 ( A) keyPressed(KeyEvent) ( B) keyPushed(KeyEvent) ( C) keyTyped(KeyEvent) ( D) keyReleased(KeyEvent) 29 下列组件中 不能用 addItemListener()方法注册 ItemListener监听器的是 ( )。 ( A) JButton ( B) JCheckBox ( C) JRadioButton ( D
14、) JTextField 30 Swing比 AWT新增的一个布局管理器为 ( )。 ( A) FlowLayout ( B) BorderLayout ( C) CardLayout ( D) BoxLayout 31 容器 Panel和 Applet默认使用的布局编辑策略是 ( )。 ( A) BorderLayout ( B) FlowLayout ( C) GridLayout ( D) CardLayout 32 Applet不能继承以下哪个类的方法 ? ( ) ( A) Component类 ( B) Container类 ( C) Panel类 ( D) Window类 33 下
15、列说法中错误的是 ( )。 ( A) Applet不能使用 JDBC访问数据库 ( B)在 Applet中使用 JDBC访问数据库,要求数据库服务器和 HTTP服务器在同一机器上 ( C)在 Applet中使用 JDBC访问数据库,要求使用一个代 理来重新定位数据库请求 ( D) JDBC通常应用于 Servlet或者普通的应用,也可以被 Applet使用 34 下列关于 J2SE体系结构的说法中错误的是 ( )。 ( A)该体系结构的最底层是操作系统,包括 Linux和 Windows等 ( B)该体系结构的最上层是由开发工具构成的 ( C)基本类库包括核心 APIs、集成 APIs和 AW
16、T/Swing和 JDBC等 ( D)多媒体支持基本软件中的声音、图形和图像等 35 算法的时间复杂度是指【 】。 36 设有序顺序表为 10,20,30,40,50,60,70,采用折半搜索时,搜索成功的平均搜索长度是【 】。 37 结构化程序设计的 3种基本逻辑结构是顺序、【 】和循环。 38 数据流图的类型有【 】和事务型。 39 关系中的属性或属性组合,其值能够唯一地标识一个元组,该属性或属性组合可选做为【 】。 40 要引入 包中的 URL公有类,需要使用语句【 】。 41 在 Java语言中,如果数字后没有任何字母,计算机默认为【 】类型。 42 方法【 】将对象的 wait po
17、ol中的所有线程都移到 lock pool中。 43 Java线程的线程体是一个线程类的【 】方法。 44 Java中流是一个流动的【 】,数据从数据源流向数据目的地。 45 Java图形用户界面技术的发展经历了两个阶段,具体体现在开发包 AWT和【 】。 46 下面类中,有两个下拉列表,一个可以选择月份,一个可以选择 2000 2009年之间的年份。 import javax.swing.*; public class Expiration extends JFrame JComboBox monthBox = new JComboBox(); JComboBox yearBox = new
18、 JComboBox(); public Expiration () super(“Expiration Date“); setSize (240,90); setDefaultCloseOperation(JFrame.EXIT ON CLOSE); JPanel pane = new JPanel(); JLabel exp = new JLabel (“Expiration Date:“); for ( int i = 0;i 13;i+) monthBox.addItem (“ “+i); for (int i = 2000;i 2010;i+) yearBox.addItem(“ “
19、+i); pane.add (exp); pane.add (monthBox) 【 】 ; setContentPane(pane); public static void main(String arguments) Expiration expiration= new Expiration(); expiration.show(); 请在画线处填入正确的语句使得程序完整。 47 Applet生命周期中的关键方法包括: init()、 start()、 stop()和【 】。 48 用来填充几何图形的方法是【 】。 49 下列 Applet在窗口中放置一个按钮,并用这个按钮控制弹出窗口的显
20、示和隐藏。请在横线处填写正确的程序。 import java.applet.Applet; import java.awt.*; import java.awt.event.*; public class Testl5 extends Applet Frame frm = new Frame(“Testl5“); public void init() Button btn= new Button(“窗口 “); btn.addActionListener( new ActionListener() public void actionPerformed( ActionEvent ae) if(
21、【 】 ) frm.setVisible( false); else frm.setSize(200,200); frm.setVisible( true); ); add( btn); 国家二级( JAVA)笔试模拟试卷 53答案与解析 1 【正确答案】 C 【试题解析】 非空循环队列的队尾指针等于排头指针时,说明循环队列已满,不能进行入队运算, A是错误的。循环队列为空时不可以进行退队运算,否则产生“下溢 ”, B是错误的。入队运算首先将队尾指针加 1,然后将新元素插入到队尾指针指向的位置, D是错误的。 2 【正确答案】 A 【试题解析】 线性链表存储方式要求每个数据节点由两个部分组成,
22、比线性表的顺序存储结构复杂, A是错误的。在平均情况下线性表的顺序存储结构插入和删除元素需要移动线性表中约一半的元素,效率低。而线性链表只需改变有关节点的指针,效率较高, B是正确的。线性表的顺序存储存储空间必须是连续的,因此不利于存储空间扩展。线性链表不需要连续的存储空间,存储空间易于扩展, C是正确的。为保证线性表的存储空间连续且顺序分配,会导致在对某个线性表进行动态分配存储空间时必须要移动其他线性表中的数据元素,不便于存储空间的动态分配, D是 正确的。 3 【正确答案】 B 【试题解析】 选项 A、 D中,根节点排在最前,因此可以断定不是中序遍历。选项 C中根节点排在最后,因此也可以断
23、定不是中序遍历。其中选项 A、 C分别为前序遍历和后序遍历的结果。 4 【正确答案】 C 【试题解析】 这里要用到的知识几乎都是要记忆的。此类题目可以采用排除法,首先,稳定的排序这里有 C和 D,其次, D不适用于实数的排序,因此只可用C。 5 【正确答案】 D 【试题解析】 希尔排序和冒泡排序都属于插入排序,它们通过数据元素的交换来逐步消除线性表中的 逆序,所以关键字比较的次数与记录的初始排列次序有关。而选择排序是指扫描整个线性表,从中选出最小的元素,将它交换到表的前面,然后对剩下的字表采用同样的办法,所以关键字比较的次数与记录的初始排列次序无关。 6 【正确答案】 A 【试题解析】 函数重
24、载指的是两个或两个以上的函数具有相同的函数名,但是形参的个数或类型不同。程序中通过判断主调函数传过来的参数的个数和类型来决定选择调用哪个具体的函数。 7 【正确答案】 C 【试题解析】 软件系统结构的总体设计包括:基于功能层次结构建立系统、按功能划 分模块的层次结构、确定每个模块的功能、建立与已确定的软件需求的对应关系、确定模块间的调用关系和模块间的接口、评估模块划分的质量等方面。详细设计的任务是:在使用程序设计语言编制程序以前,对所采用算法的逻辑关系进行分析,设计出全部必要的过程细节,并给予清晰的表达。需求分析是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。需求分析的任务是发
25、现需求、求精、建模和定义需求,通常包括:功能需求、性能需求、环境需求、可靠性需求、安全保密要求、用户界面需求、资源使用需求、成本消耗需求、开发进度需求等。编程调试 的任务是诊断和改正程序中潜在的错误。综上所述,软件功能分解只能发生在总体设计阶段。 8 【正确答案】 C 【试题解析】 本题考查对投影操作的掌握。投影操作是从表中选出某些列而丢弃另一些列。如果只对一个关系中的某些属性感兴趣,那么就需要使用投影操作在这些属性上投影该关系,而元组个数是指一个表中的行的数目,因此,对一个关系进行投影操作以后,新关系的元组个数跟原来关系的元组个数相等。 9 【正确答案】 B 【试题解析】 本题考查关系数据库
26、的概念模型。数据库的概念模型体现了数据之间的关系,它是各 种数据之间相互关系的集合。关系数据库的概念模型是关系模式的集合。关系子模式是指关系数据库模式中用户所见到的那部分数据模式。 10 【正确答案】 B 【试题解析】 本题考查对几种关系代数运算的掌握。其中选择和投影的区别在于:如果将一个关系看作一张表,那么选择操作就是从这张表中选出一些行而丢弃另一些行;而投影操作则是从这张表中选出某些列而丢弃另一些列。如果只对一个关系中的某些属性感兴趣,那么就需要使用投影操作。并操作的结果表示为R S,它是一个关系,包括或者在 R中、或者在 S中、或者同时在 R和 S中的所 有元组;新的关系中属性个数多于原
27、来关系中属性个数。连接操作用于将两个关系中的相关元组组合成单个元组。 11 【正确答案】 B 【试题解析】 该题考查考生对 Java程序代码安全性的掌握。 Java程序运行的过程是这样的:类加载器加载程序运行所需要的所有类,它通过区分本机文件系统的类和网络系统导入的类增加安全性,这可以限制任何的特洛伊木马程序,因为本机类总是先被加载,一旦所有的类被加载完,执行文件的内存划分就固定了,在这个时候,特定的内存地址被分配给对应的符号引用,查找表也被建立,由于内存划分发生在运行 时,解释器在受限制的代码区增加保护,防止未授权的访问;然后字节码校验器进行校验,主要执行下面的检查,类是否符合 JVM规范的
28、类文件格式,有没有违反访问限制,代码有没有造成堆栈的上溢或者下溢,所有操作代码的参数类型是否都是正确的,有没有非法的数据类型转换 (例如将整型数转换成对象类型 )发生;校验通过的字节码被解释器执行,解释器在必要时通过运行时系统执行对底层硬件的相应调用。 12 【正确答案】 A 【试题解析】 本题是考查考生对 Java程序中路径设置的掌握。设置环境变量path的作用是使 DOS操作系统可 以找到 JDK命令。如果用户没有在 Path中设置,且当前文件夹不是安装文件夹,那么编译和运行时会出现错误。 JDK程序在寻求环境变量 ClassPath所在文件夹中的由用户生成的 .class文件。 13 【
29、正确答案】 A 【试题解析】 本题考查实例成员和类成员用法的不同。在给出的程序中,声明一个类变量 Var1、实例变量 Var2和类方法 main。在类方法 main中访问类变量Var1和实例变量 Var2,在 main方法中还实例化了 MethTest类的两个对象 Obj1和 Obj2,通过这两个对象访问类变量和实 例变量。我们知道,可以通过类名直接访问类变量,而且,所有实例对象将共享同一个类变量,每个实例对象对类变量的改变都会直接影响到其他实例对象,但一个对象对实例变量的改变不会影响其他实例对象。因此 Var1的值每次都会增 1,并且保持已经改变的值, Var2的值由于是分别调用,故值并不会
30、改变。 14 【正确答案】 A 【试题解析】 本题考查对默认构造方法的理解。要熟记构造方法的几个特点: 构造方法用来初始化类的一个对象。 构造方法具有和类一样的名称,并且没有返回类型还可以重载。 只能用运算符 new调用构 造方法。 如果没有定义构造方法,在 Java运行时,系统会自动提供默认的构造方法,它没有任何参数。 15 【正确答案】 C 【试题解析】 类中成员定义时前面可加修饰符 (如 public、 private、 protected等 )。加 public修饰指明成员为公有,可以被对象访问;加 protected指明成员为保护成员,不允许被对象访问和存取;加 private表明为
31、私有成员,只能被类自己访问和调用,不能被对象访问。所以只有 C选项的描述是正确的。 16 【正确答案】 C 【试题解析】 类变量在 类中声明,作用域是整个类,它不能在类的方法中声明。局部变量在类的方法中声明,作用域只能是它所在的方法中。 17 【正确答案】 D 【试题解析】 题目给出的分类条件是运算符的功能,因此选项 B首先排除;选项 C也容易排除;选项 A看上去是正确的答案,其实是不正确的,运算符 =虽然在形式上很像扩展赋值运算符,但它是关系运算符。 18 【正确答案】 A 【试题解析】 本题考查算术运算符的优先级。算术运算符中 +和 -的级别最高,然后就是 *和 /以及 %,而 +和 -的
32、级别最低。掌握算术运算符的优先级就易得 出此题的输出为 10和 40。 19 【正确答案】 A 【试题解析】 本题考查对数组的引用。在 Java语言中,数组的下标是从 0开始的,最大的下标值比所定义的数组长度的值小 1。 20 【正确答案】 D 【试题解析】 本题考查字符串数组的定义和初始化,属于概念考查类型的题目。A选项中, “C Program”这个字符串常量在赋值过程中给出的是这个字符串在内存中所占连续存储单元的首地址,而 nm是不可直接赋值的数组名,因此 A选项中的语句不合法。 B选项, C+不支持数组之间的直接赋值,所以也不正确。 C选项,表面上没有错,但仔细看一下会发现,定义时数组
33、长度为 7,而赋值的字符串常量的个数为 8,最终导致越界,所以也不合法。 21 【正确答案】 C 【试题解析】 第 1个赋值语句使得 n的值为 7, 7的二进制形式为 00000111,第2个赋值语句可写为 n=n 3, n左移 3位的结果为 00111000,即第 3个赋值语句的运算顺序为 (n&n)+(1|n)+(2n)+3,运算结果为 57(十进制 ),其二进制形式为 00111001,第 4个赋值语句使 n的值右移 2位,由于 n的符号位为 0,因此,在右移时左边 填充位为 0,即 00001110,其十进制形式为 14。 22 【正确答案】 D 【试题解析】 Java语言的流程控制结
34、构包括分支语句、跳转语句、循环语句等,但是赋值语句是由赋值表达式构成的不能用于流程控制。 23 【正确答案】 C 【试题解析】 本题考查对 for循环语句理解。本题是两重 for循环,第 1重循环是将 a的值加 1, b清零,第 2重循环是将 a的值加 1, b的值加 2,第 1重和第二重循环都是 10次,每次 a的值增加 1l,执行 10次所以 a的值为 110:由于第 1个 for循环将 b赋 0,所以 b的 值只是最后一次循环的值,即 20。故本题答案是C。 24 【正确答案】 C 【试题解析】 线程只能在创建的时候设置所属的线程组,创建之后不可以从一个线程组转移到另一个线程组,在创建线
35、程组时,若没有指定所属的线程组,线程自动属于其父线程的线程组。 25 【正确答案】 C 【试题解析】 本题是对异常处理基本知识的考查。本程序中创建了一个异常类MyExce ption,它的祖先类是 Exception。在程序中,程序先发出异常MyException,下面是 catch捕获异常,但是 catch列表中并 没有与之对应的MyExcepfion,但是有一个 Exception,它是 MyException的祖先类。如果有多种异常需要捕获,在安排 catch语句的顺序时要注意,应该首先捕获最特殊的类,然后逐渐一般化。例如, IOExcepfion类是 FileNotFoundExcep
36、tion类的父类;就应该首先捕获 FileNotFoundException异常,然后捕获 IOExcepfion异常。所以运行结果是 Its caught!/Its finally caught! 26 【正确答案】 C 【试题解 析】 一般的数据访问权限,如 public、 protected、 package或 private等,对数据的串行化没有影响。只有 static和 transient关键字修饰的数据才可以不被串行化。 27 【正确答案】 D 【试题解析】 Random stream最便于读取大文件的中间一段内容。 28 【正确答案】 B 【试题解析】 本题考查常用监听器接口中基
37、本方法的知识。选项 A错误,KeyListener接口中有 keyPressed(KeyEvent),当按下键时被调用;选项 B正确,KeyListener接口中没有该方法;选项 C错误, KeyListener接口中有 keyTyped(KeyEvent),当敲键时被调用到;选项 D错误, KeyListener接口中有key Released(KeyEvent),当释放键时被调用到。故本题答案是 B。 29 【正确答案】 D 【试题解析】 本题考查事件响应中基本组件所能产生的事件。选项 A错误,JBuRon能产生项目事件,因此可以用 addItemListener()方法注册 ItemLi
38、stener监听器;选项 B错误, JCheckBox也可注册 ItemListener监听器;选项 C错误,JRadioButton组件也可以;选项 D正确, JTextField不能产生项目事件。故本题答案是 D。 30 【正确答案】 D 【试题解析】 Swing继续沿用了 AWT中的布局管理器,包括 FlowLayout、BorderLayout、 CardLayout、 GridLayout、 GridBagLayout,另外 Swing新增了一个 BoxLayout布局管理器。 31 【正确答案】 B 【试题解析】 该题考查 Applet布局方面的知识。选项 A错误,边界布局管理器(
39、BorderLayout)将容器按上北下南左西右东划分为东、南、西、北、中 5部分,分别用英文词 East、 South、 North、 West、 Center来表示;选项 B正确,流式布局管理器 (FlowLayout)简单的将组件由左到右排列,排满一行,自动移到下一行,Panel和 Applet的默认 Layout为 FlowLayout;选项 C错误,网格布局管理器 (GridLayout)把容器划分为指定的几行几列的网格,把组件放在一个网格内,组件位置从上到下,从左到右排列,组件大小一致,容器大小 改变时,组件位置不变,大小改变;选项 D错误, CardLayout是卡片布局。故本题
40、答案是 B。 32 【正确答案】 D 【试题解析】 Applet是 Panel的直接子类,而 Panel的直接父类是 Container,Container的父类是 Component,因此可以继承这 3个类的方法。 33 【正确答案】 A 【试题解析】 JDBC通常应用于 Servlet或者普通的应用,也可以被 Applet使用。 Applet若要使用 JDBC访问数据库,就需要按照 B和 C中给出的策略进行操作。 34 【正确答案】 C 【试题解析】 JDBC的支持是在体系结构第 2层给出的。 35 【正确答案】 算法执行过程中所需要的基本运算次数 【试题解析】 本题考查算法的时间复杂度,
41、这个知识点是本章的重点考点之一,考生应该好好理解掌握。算法的时间复杂度是指执行算法所需要的计算工作量,也就是算法在执行过程中所执行的基本运算的次数,而不是指程序运行需要的时间或是程序的长度。 36 【正确答案】 17/7 【试题解析】 ASLsucc=(1*1+2*2+3*4)/7 =17/7 37 【正确答 案】 选择 【试题解析】 本题涉及结构化程序设计的 3种基本控制结构,考生应该掌握这些基本的知识。结构化定理还进一步表明,任何一个复杂问题的程序设计都可以用顺序、选择和循环这 3种基本结构组成,且它们都具有以下特点;只有一个入口;只有一个出口;结构中无死循环。程序中 3种基本结构之间形成
42、顺序执行关系。 38 【正确答案】 变换型 【试题解析】 典型的数据流图有两种,即变换型和事务型。 39 【正确答案】 键 【试题解析】 键是关系模型中的一个重要概念,在二维表中能唯一地标识一个元组的属性 ,二维表中可能有若干个键。表中一定要有键,因为若表中所有的属性的子集均不是键,则表中属性的全集必为键。 40 【正确答案】 impog .URL 【试题解析】 本题考查 Java语言中引入包的方法。引入所有直接公有类须在所引包名后加 *,而直接引用某个类只须直接引入包名即可。 41 【正确答案】 double 【试题解析】 在 Java语言中,如数字后没有任何字母,计算机默认为 double
43、类型。 42 【正确答案】 notifyAll() 【试题解析】 notify()方法是将对象的 wait pool中一个线程移到 lock pool中, notifyAll()则将所有的线程都做这样的一个转移。 43 【正确答案】 run() 【试题解析】 Java线程的线程体是一个线程类的 run()方法。 44 【正确答案】 数据缓冲区 【试题解析】 流是从数据源流向数据目的地的一个数据序列,数据源的数据首先被放在一个数据缓冲区中,然后由这个缓冲区将数据带到数据目的地,这个缓冲区是流动的。 45 【正确答案】 Swing 【试题解析】 Swing包是 AWT包的扩展,因此第 1阶段是以
44、AWT作为标志的,而第 2阶段是以 Swing作为标志的。 46 【正确答案】 pane.add(yearBox) 【试题解析】 本题考查 Swing常用组件下拉列表运用的基本知识,属于综合运用题。由程序可知, yearBox和 monthBox一样也是一个下拉列表,下拉列表由类 JComboBox创建。创建完,还需要将下拉列表 yearBox添加到 pane中,才能显示。 47 【正确答案】 destroy 【试题解析】 Applet生命周期中的关键方法包括: init()、 start()、 stop()和deslxoy()。 48 【正确答案】 fillArc(int x, int y,
45、 int width, int width, int height, mtstartAngle, int arcAngle) 【试题解析】 fillArc(int x, int y, int width, int width, int height, int startAngle, int arcAngle)是用当前的颜色填充弧的内部,形成扇形的区域。 x是横坐标, y是纵坐标, width是弧的宽度, height是弧的高度, startAngle是起始角度, arcAngle是弧所跨的角度。该方法是用当前的颜色,来填充指定的多边形。 49 【正确答案】 frm.isVisible() 【试题解析】 调用 Frame的 isVisi ble()方法来判断该构件是否可见。若返回值为false,则不可见,需要设置为可见的;若返回值为 true,则可见,需要设置为不可见。这样就实现了对弹出窗口显示和隐藏的控制。