1、国家二级(JAVA)笔试-试卷 11 及答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:36,分数:72.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。(分数:2.00)_2.下列选项中不符合良好程序设计风格的是( )。(分数:2.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D.模块设计要保证高耦合、高内聚3.希尔排序属于( )。(分数:2.00)A.交换排序B.归并排序C.选择排序D.插入排序4.程序设计语言的工程特性之一为( )。(分数:2.00)A.软件的可重用
2、性B.数据结构的描述性C.抽象类型的描述性D.数据库的易操作性5.对下列二叉树 进行中序遍历的结果是( )。(分数:2.00)A.ACBDFEGB.ACBDFGEC.ABDCGEFD.FCADBEG6.下列叙述中,不属于数据库系统的是( )。(分数:2.00)A.数据库B.数据库管理系统C.数据库管理员D.数据库应用系统7.数据的逻辑结构是指( )。(分数:2.00)A.存储在外存中的数据B.数据所占的存储空间量C.数据元素之间的逻辑关系D.数据的逻辑结构在计算机中的表示8.在数据库系统中,用户所见的数据模式为( )。(分数:2.00)A.概念模式B.外模式C.内模式D.物理模式9.在关系数据
3、库中,用来组织索引结构联系的是( )。(分数:2.00)A.树形结构B.网状结构C.线性表D.二维表10.检查模块是否正确的组合在一起的过程称为( )。(分数:2.00)A.确认测试B.集成测试C.验证测试D.验收测试11.下列数据结构中不属于线性存储结构的是( )。(分数:2.00)A.顺序表B.栈C.队列D.链表12.下面关于 Applet 的说法正确的是( )。(分数:2.00)A.Applet 也需要 main 方法B.Applet 必须继承自 java.awt.AppletC.Applet 能访问本地文件D.Applet 程序不需要编译13.Java 的字符类型采用的是 Unicod
4、e 编码方案,每个 Unicode 码占用( )个比特位。(分数:2.00)A.8B.16C.32D.6414.用来实现 Java 虚拟机的语言是( )。(分数:2.00)A.JavaB.CC.C+D.汇编15.下列关于 Java 安全性的说法正确的是( )。(分数:2.00)A.有严格的访问权限检查B.对程序执行前要检查C.不允许使用指针D.可防止对内存的非法入侵16.下列说法错误的是( )。(分数:2.00)A.Java 语言中无 sizeof 运算符B.Java 语言中所有类型的长度和表示是固定的,不依赖执行C.goto 和 const 不是 Java 编程语言中使用的关键字D.Java
5、 语言中通过#define 命令定义常量17.下列语句片段: int result; int a=17,b=6; result=(a%b4) ? a%b:a/b; System.out.println(result);(分数:2.00)A.0B.1C.2D.518.下列代码的执行结果是( )。 public class test4 public smile void main(string args) int a=4,b=6,c=8; String s=“abc“; Sy stem.out.println(a+b+s+e); System.out.pfinfin(); (分数:2.00)A.a
6、babccB.464688C.46abc8D.10abc819.编译运行下程序后,关于输出结果的说法正确的是( )。 public class conditional public smile void main(string args) int x=4; System.out.println(“alue is “+(x4)?99:9); (分数:2.00)A.输出结果为 value is 99.99B.输出结果为 value is 9C.输出结果为 valueis9.0D.编译错误20.在编写 JavaApplet 程序时,若需要对发生的事件作出响应处理,一般需要在程序的开头写上( )语句。
7、(分数:2.00)A.import java.awt.*;B.import java.applet.*;C.import java.io.*:D.import java.awt.evcnt.*;21.获取一个不包含路径的文件名的方法为( )。(分数:2.00)A.String gctName():B.String getPath():C.StringgetAbslutePath();D.StringgetParent():22.下列关于内部类的说法,正确的是( )。(分数:2.00)A.内部类可以与它包含的类名相同B.内部类只能使用它所在类的静态成员变量,不能使用它所在类的方法中的局部变量C.
8、内部类可以用 abstract 修饰定义为抽象类,不能用 private protected 定义D.外部使用内部类时必须给出类的全名23.定义一个表示 10 个值为 null 的字符串数组,下面选项正确的是( )。(分数:2.00)A.Stringa;B.String a;C.char a10;D.Stxing a=new String10;24.下列说法中,错误的一项是( )。(分数:2.00)A.线程是程序中的一个执行流B.多线程是程序中的多个执行流C.线程是进程的一次动态执行过程D.进程是程序的一次动态执行过程25.文件类是,java.io 包中的( )。(分数:2.00)A.文件流类
9、B.字节流类C.对象流类D.非流类26.下列( )是异常的含义。(分数:2.00)A.程序的语法错B.程序编译或运行中所发生的异常事件C.程序预先定义好的异常事件D.程序编译错误27.下面关于循环冗余校验(crc)说法不正确的是( )。(分数:2.00)A.此项技术主要用在数字传输技术领域B.以传输的可靠性为目的C.进行差错控制D.crc 编码简单,但误码率高28.关于 Applet 和 Application,下列说法错误的是( )。(分数:2.00)A.Applet 自身不能运行B.Appht 可嵌在 Application 中运行C.Application 以 main()方法为入口D.
10、Applet 可嵌在浏览器中运行29.以下不属于 Thread 类提供的线程控制方法的是( )。(分数:2.00)A.bmak()B.sleep()C.yield()D.join()30.在 Java 中,线程是( )。(分数:2.00)A.分时的B.抢占式的C.非抢占式的D.非分时的31.下列关于线程和进程的说法正确的是( )。(分数:2.00)A.进程结构的所有成分都在用户空间内B.用户程序能够直接访问进程涉及的数据C.线程是内核级的实体D.线程结构驻留在用户空间中32.下列关于字符串的叙述错误的是( )。(分数:2.00)A.创建 String 类的字符串对象后,字符串所代表的文本根据情
11、况可改变B.字符串由 java.lang.String 和 java.lang.SlringBuffer 定义C.字符串常用数组存储,处理字符串实际上是对数组元素的分别处理,要注意数组下界不要越界D.在 Java 语言中,字符串是作为对象来处理的33.为了从 HTML 文件中获取参数,在 Applet 程序中应该编写的代码是( )。(分数:2.00)A.在 start()方法中加入语句 String s=getParameter(“buttonLabel“);B.在 int()方法中加入语句 String s=Parameter(“buttonLabel“);C.在 int()方法中加入语句
12、String s=getParameter(“BUTTONLABEL“);D.在 start()方法中加入语句 String s=getParameter(“BUTIONLABEL“);34.下面( )操作是 applet 可以做的。(分数:2.00)A.读取客户端部分系统变量B.读取客户端文件C.在客户端主机上创建新文件D.在客户端装载程序库35.3 下面的程序是完成一个容器的例子,所缺部分正确的选项是( )。 import java.awt.*; public class MyFrame extends Frame public static void main(String args)
13、MyFrame fr=new MyFrame(“Hello Out There!“); fr.setSize(200,200); fr.setBackground(Color.red); _; public MyFrame(String str) super(str); /调用你类的构造方法 (分数:2.00)A.fr. setVisible(false)B.fr. setVisibleC.fr. setVisible(true)D.以上都不是36.关于布局管理器(LayoutManager),下列说法正确的是( )。(分数:2.00)A.布局管理器是用来部署 Java 应用程序的网上发布的B
14、.(LayoutManager)本身不是接口C.布局管理器是用来管理构件放置在容器的位置和大小的D.以上说法都不对二、填空题(总题数:16,分数:32.00)37.填空题(每空)请将每一个空的正确答案写在答题卡上。注意:以命令关键字填空的必须拼写完整。(分数:2.00)_38.长度为 n 的顺序存储线性表中,当在任何位置上插入一个元素的概率都相等时,插入一个元素所需移动元素的平均个数为 1。(分数:2.00)填空项 1:_39.用树型结构表示实体类型及实体间联系的数据模型称为 1。(分数:2.00)填空项 1:_40.类是一个支持集成的抽象数据类型,而对象是类的 1。(分数:2.00)填空项
15、1:_41.数据流图的类型有 1 和事务型。(分数:2.00)填空项 1:_42.当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的 1。(分数:2.00)填空项 1:_43.在由一个二元算术运算符构成的表达式中,如果操作数 1 的数据类型为 int 类型,操作数 2 的数据类型为 long 类型,则在运算过程中,是转换为 1 数据类型来运算的。(分数:2.00)填空项 1:_44.设 a=8,则表达式 a2 的值是 1。(分数:2.00)填空项 1:_45.在一个 for 循环的循环体中可以包含另一个 for 循环,实现 for
16、循环的 1。(分数:2.00)填空项 1:_46.一个 try 代码段后面必须跟若干个 catch 代码段或者一个 1 代码段。(分数:2.00)填空项 1:_47.文件类 1 是 java.io 中的一个重要的非流类,里面封装了对文件系统进行操作的功能。(分数:2.00)填空项 1:_48.多线程程序设计的含义是可以将一个程序任务分成几个并行的 1。(分数:2.00)填空项 1:_49.Java 中的对象锁是一种独占的 1 锁。(分数:2.00)填空项 1:_50.在 Java 中,将程序里出现的对象保存在外存中,称为 1。(分数:2.00)填空项 1:_51.CardLayout 布局管理
17、器可以使多个构件共享同一个 1。(分数:2.00)填空项 1:_52.Applet 类中用于返回包含 Applet 的 HTML 文件 URL 的方法是 1。(分数:2.00)填空项 1:_国家二级(JAVA)笔试-试卷 11 答案解析(总分:104.00,做题时间:90 分钟)一、选择题(总题数:36,分数:72.00)1.选择题()下列各题 A、B、C、D 四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。(分数:2.00)_解析:2.下列选项中不符合良好程序设计风格的是( )。(分数:2.00)A.源程序要文档化B.数据说明的次序要规范化C.避免滥用 goto 语句D
18、.模块设计要保证高耦合、高内聚 解析:3.希尔排序属于( )。(分数:2.00)A.交换排序B.归并排序C.选择排序D.插入排序 解析:4.程序设计语言的工程特性之一为( )。(分数:2.00)A.软件的可重用性 B.数据结构的描述性C.抽象类型的描述性D.数据库的易操作性解析:5.对下列二叉树 进行中序遍历的结果是( )。(分数:2.00)A.ACBDFEG B.ACBDFGEC.ABDCGEFD.FCADBEG解析:6.下列叙述中,不属于数据库系统的是( )。(分数:2.00)A.数据库B.数据库管理系统C.数据库管理员D.数据库应用系统 解析:7.数据的逻辑结构是指( )。(分数:2.0
19、0)A.存储在外存中的数据B.数据所占的存储空间量C.数据元素之间的逻辑关系 D.数据的逻辑结构在计算机中的表示解析:8.在数据库系统中,用户所见的数据模式为( )。(分数:2.00)A.概念模式B.外模式 C.内模式D.物理模式解析:9.在关系数据库中,用来组织索引结构联系的是( )。(分数:2.00)A.树形结构 B.网状结构C.线性表D.二维表解析:10.检查模块是否正确的组合在一起的过程称为( )。(分数:2.00)A.确认测试B.集成测试 C.验证测试D.验收测试解析:11.下列数据结构中不属于线性存储结构的是( )。(分数:2.00)A.顺序表B.栈C.队列D.链表 解析:12.下
20、面关于 Applet 的说法正确的是( )。(分数:2.00)A.Applet 也需要 main 方法B.Applet 必须继承自 java.awt.Applet C.Applet 能访问本地文件D.Applet 程序不需要编译解析:13.Java 的字符类型采用的是 Unicode 编码方案,每个 Unicode 码占用( )个比特位。(分数:2.00)A.8B.16 C.32D.64解析:14.用来实现 Java 虚拟机的语言是( )。(分数:2.00)A.JavaB.CC.C+ D.汇编解析:15.下列关于 Java 安全性的说法正确的是( )。(分数:2.00)A.有严格的访问权限检查
21、B.对程序执行前要检查 C.不允许使用指针D.可防止对内存的非法入侵解析:16.下列说法错误的是( )。(分数:2.00)A.Java 语言中无 sizeof 运算符B.Java 语言中所有类型的长度和表示是固定的,不依赖执行C.goto 和 const 不是 Java 编程语言中使用的关键字D.Java 语言中通过#define 命令定义常量 解析:17.下列语句片段: int result; int a=17,b=6; result=(a%b4) ? a%b:a/b; System.out.println(result);(分数:2.00)A.0B.1C.2D.5 解析:18.下列代码的执
22、行结果是( )。 public class test4 public smile void main(string args) int a=4,b=6,c=8; String s=“abc“; Sy stem.out.println(a+b+s+e); System.out.pfinfin(); (分数:2.00)A.ababccB.464688C.46abc8D.10abc8 解析:19.编译运行下程序后,关于输出结果的说法正确的是( )。 public class conditional public smile void main(string args) int x=4; System
23、.out.println(“alue is “+(x4)?99:9); (分数:2.00)A.输出结果为 value is 99.99B.输出结果为 value is 9C.输出结果为 valueis9.0 D.编译错误解析:20.在编写 JavaApplet 程序时,若需要对发生的事件作出响应处理,一般需要在程序的开头写上( )语句。(分数:2.00)A.import java.awt.*;B.import java.applet.*;C.import java.io.*:D.import java.awt.evcnt.*; 解析:21.获取一个不包含路径的文件名的方法为( )。(分数:2.
24、00)A.String gctName(): B.String getPath():C.StringgetAbslutePath();D.StringgetParent():解析:22.下列关于内部类的说法,正确的是( )。(分数:2.00)A.内部类可以与它包含的类名相同B.内部类只能使用它所在类的静态成员变量,不能使用它所在类的方法中的局部变量C.内部类可以用 abstract 修饰定义为抽象类,不能用 private protected 定义D.外部使用内部类时必须给出类的全名 解析:23.定义一个表示 10 个值为 null 的字符串数组,下面选项正确的是( )。(分数:2.00)A.
25、Stringa;B.String a;C.char a10;D.Stxing a=new String10; 解析:24.下列说法中,错误的一项是( )。(分数:2.00)A.线程是程序中的一个执行流B.多线程是程序中的多个执行流C.线程是进程的一次动态执行过程 D.进程是程序的一次动态执行过程解析:25.文件类是,java.io 包中的( )。(分数:2.00)A.文件流类B.字节流类C.对象流类D.非流类 解析:26.下列( )是异常的含义。(分数:2.00)A.程序的语法错B.程序编译或运行中所发生的异常事件 C.程序预先定义好的异常事件D.程序编译错误解析:27.下面关于循环冗余校验(
26、crc)说法不正确的是( )。(分数:2.00)A.此项技术主要用在数字传输技术领域B.以传输的可靠性为目的C.进行差错控制D.crc 编码简单,但误码率高 解析:28.关于 Applet 和 Application,下列说法错误的是( )。(分数:2.00)A.Applet 自身不能运行B.Appht 可嵌在 Application 中运行 C.Application 以 main()方法为入口D.Applet 可嵌在浏览器中运行解析:29.以下不属于 Thread 类提供的线程控制方法的是( )。(分数:2.00)A.bmak() B.sleep()C.yield()D.join()解析:
27、30.在 Java 中,线程是( )。(分数:2.00)A.分时的B.抢占式的 C.非抢占式的D.非分时的解析:31.下列关于线程和进程的说法正确的是( )。(分数:2.00)A.进程结构的所有成分都在用户空间内B.用户程序能够直接访问进程涉及的数据C.线程是内核级的实体D.线程结构驻留在用户空间中 解析:32.下列关于字符串的叙述错误的是( )。(分数:2.00)A.创建 String 类的字符串对象后,字符串所代表的文本根据情况可改变 B.字符串由 java.lang.String 和 java.lang.SlringBuffer 定义C.字符串常用数组存储,处理字符串实际上是对数组元素的
28、分别处理,要注意数组下界不要越界D.在 Java 语言中,字符串是作为对象来处理的解析:33.为了从 HTML 文件中获取参数,在 Applet 程序中应该编写的代码是( )。(分数:2.00)A.在 start()方法中加入语句 String s=getParameter(“buttonLabel“);B.在 int()方法中加入语句 String s=Parameter(“buttonLabel“);C.在 int()方法中加入语句 String s=getParameter(“BUTTONLABEL“); D.在 start()方法中加入语句 String s=getParameter(
29、“BUTIONLABEL“);解析:34.下面( )操作是 applet 可以做的。(分数:2.00)A.读取客户端部分系统变量B.读取客户端文件 C.在客户端主机上创建新文件D.在客户端装载程序库解析:35.3 下面的程序是完成一个容器的例子,所缺部分正确的选项是( )。 import java.awt.*; public class MyFrame extends Frame public static void main(String args) MyFrame fr=new MyFrame(“Hello Out There!“); fr.setSize(200,200); fr.set
30、Background(Color.red); _; public MyFrame(String str) super(str); /调用你类的构造方法 (分数:2.00)A.fr. setVisible(false)B.fr. setVisible C.fr. setVisible(true)D.以上都不是解析:36.关于布局管理器(LayoutManager),下列说法正确的是( )。(分数:2.00)A.布局管理器是用来部署 Java 应用程序的网上发布的B.(LayoutManager)本身不是接口C.布局管理器是用来管理构件放置在容器的位置和大小的 D.以上说法都不对解析:二、填空题(
31、总题数:16,分数:32.00)37.填空题(每空)请将每一个空的正确答案写在答题卡上。注意:以命令关键字填空的必须拼写完整。(分数:2.00)_解析:38.长度为 n 的顺序存储线性表中,当在任何位置上插入一个元素的概率都相等时,插入一个元素所需移动元素的平均个数为 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:n/2)解析:解析:在线性表的任何位置插入一个元素的概率相等,即概率为 p=1/(n+1),则插入一个元素时所需移动元素的平均次数为39.用树型结构表示实体类型及实体间联系的数据模型称为 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:层次模型)解析:解析:
32、用树型结构表示实体类型及实体间联系的数据模型称为层次模型,用有向图结构表示实体类型及实体间联系的数据模型称为网状模型,用二维表格结构表示实体及其联系的数据模型称为关系模型。40.类是一个支持集成的抽象数据类型,而对象是类的 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:实例)解析:解析:将属性、操作相似的对象归为类,也就是说,类是具有共同属性、共同方法的对象的集合。所以,类是对象的抽象,对象则是其对应类的一个实例。41.数据流图的类型有 1 和事务型。(分数:2.00)填空项 1:_ (正确答案:正确答案:变换型)解析:解析:典型的数据流类型有两种:变换型和事务型。变换型是指信息
33、沿输入通路进入系统,同时由外部形式变换成内部形式,进入系统的信息通过变换中心,经加工处理后再沿输出通路变换成外部形式离开软件系统。在很多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流就叫做事务。42.当数据的物理结构(存储结构、存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:物理独立性)解析:解析:数据独立性是数据与程序间的互不依赖性,即数据库中数据独立于应用程序而不依赖于应用程序。也就是说,数据的逻辑结构、存储结构与存取方式的改变不会影响应
34、用程序。数据独立性一般分为物理独立性与逻辑独立性两级。43.在由一个二元算术运算符构成的表达式中,如果操作数 1 的数据类型为 int 类型,操作数 2 的数据类型为 long 类型,则在运算过程中,是转换为 1 数据类型来运算的。(分数:2.00)填空项 1:_ (正确答案:正确答案:long)解析:解析:当不同类型数据一起运算时,位数少的数据类型会自动向位数多的数据类型转换,即自动转换。自动类型转换的优先次序是:byte, short, charintlongfloatdouble。44.设 a=8,则表达式 a2 的值是 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:2)解
35、析:解析:为不带符号的右移,8 的各比特位右移 2 位,左边的空位填 0。此题将 8(1000)变为了 2(0010)。45.在一个 for 循环的循环体中可以包含另一个 for 循环,实现 for 循环的 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:嵌套)解析:解析:通过循环和分支的嵌套,程序可以实现很多复杂的算法,除了 for 循环外,还可以是其他的循环语句或者分支语句。46.一个 try 代码段后面必须跟若干个 catch 代码段或者一个 1 代码段。(分数:2.00)填空项 1:_ (正确答案:正确答案:finally)解析:解析:根据 try-catch-finall
36、y 结构,try 后面是若干个 catch,再后面是一个 finally 代码段,可以没有 catch 或者没有 finally,但是这两者中必须有一个。47.文件类 1 是 java.io 中的一个重要的非流类,里面封装了对文件系统进行操作的功能。(分数:2.00)填空项 1:_ (正确答案:正确答案:File)解析:解析:File 类是 java. io 包中的非流类,它以系统无关的方式描述文件对象的属性。48.多线程程序设计的含义是可以将一个程序任务分成几个并行的 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:子任务)解析:解析:每一个程序在执行过程中,可以产生多个线程,每
37、个线程执行一个子任务,各个线程之间并行执行,每个子任务合起来共同构成一个任务。49.Java 中的对象锁是一种独占的 1 锁。(分数:2.00)填空项 1:_ (正确答案:正确答案:排他)解析:解析:当一个对象获得了对象锁时,就拥有了操作该对象的所有权力,在这期间其他任何线程不能够对该对象进行任何操作。50.在 Java 中,将程序里出现的对象保存在外存中,称为 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:对象永久化)解析:解析:将对象的状态以一种串行格式表示出来,并保存在外存中,以便以后读取该对象时能够将其重构出来。51.CardLayout 布局管理器可以使多个构件共享同一个 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:显示空间)解析:解析:CardLayout 将容器分层,每一层显示的空间都是整个容器的大小,每层只允许放入一个构件,因此,多个构件共享同一个容器的显示空间。52.Applet 类中用于返回包含 Applet 的 HTML 文件 URL 的方法是 1。(分数:2.00)填空项 1:_ (正确答案:正确答案:getDocumentBase( ))解析:解析:getDocumentBase( )方法属于 HTML 标记方法,用于获取包含 Applet 的 HTML 文件的 URL。