1、国家计算机二级(Java)81 及答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2分,共 70分) 下列各(总题数:35,分数:70.00)1.有如下程序段 if(x0) System.out.println(“first“); else if (x -4) System.out.println(“second“); else System.out.println(“third“); x 的取值在什么范围内时,将打印出字符串“second“? (分数:2.00)A.在数据库中使用 USE命令打开或关闭视图B.在“浏览器”窗口中可以显示或修改视图中的数据C.视图不能作
2、为文本框、表格等控件的数据源D.可以使用 SQL语句操作视图2.下列程序的执行结果是( )。 public class Testbb public static void main(String args ) System.out.println(5/2.5); (分数:2.00)A.“自动报表”B.“报表向导”C.“图标向导”D.“标签向导”3.下列程序段执行后的输出结果为( )。 int x=3; int y=10; System.out.println(yx);(分数:2.00)A.所有的构件都可以通过 add()方法添加构件B.Java的图形界面的最基本组成部分是容器C.Panel不能
3、作为最外层的容器单独存在,它首先必须作为一个构件放置到其他容器中,然后把它当作容器D.一个容器可以容纳多个构件,并使它们成为一个整体4.下列程序的执行结果是( )。 public class Testgg public static void main(String args) float t=9.0f; int q=5; System.out.println(t+)*(- -q); (分数:2.00)A.40B.36C.36D.405.在下列 AWT的基本构件中,哪一个为下拉式菜单组件的名称?(分数:2.00)A.ButtonB.ChoiceC.LabelD.Scroll6.给出下列的程序代
4、码片段,下列的哪个选项是不正确的? public void create( ) Vector my; my=new Vector ( ); (分数:2.00)A.第二行的声明不会为变量 my分配内存空间B.第二行语句创建一个 Vector类对象C.第三行语句创建一个 Vector类对象D.第三行语句为一个 Vector类对象分配内存空间7.阅读下面程序 1 public class Try extends Thread 2 public static void main(String args) 3 Try t=new Try(); 4 t.start(); 5 6 7 public void
5、 run(int j) 8 int i=0; 9 while(i5) 10 System.out.println(“祝你成功!”); 11 i+; 12 13 14 该程序要求打印 5行“祝你成功!”,必须改正程序中的某行代码,程序才能完成。选择正确的修改是【 】 (分数:2.00)A.将第 1行的 extendsThread改为 implementsRunnableB.将第 3行的 newTry()改为 newThread()C.将第 4行 t.start()改为 start(t)D.将第 7行的 publicvoidrun(intj)改为 publicvoidrun()8.给出下列的程序,
6、其叙述正确的是( )。 public class Man static int arr = new int10; public static void main(String a ) System.out.println(arr1 ); (分数:2.00)A.Visual Foxpro支持两种索引文件:单一索引文件和复合索引文件B.打开和关闭索引文件均使用 SET INDEX TO命令C.索引的类型有主索引、候选索引、惟一索引和普通索引D.索引文件不随库文件的关闭而关闭9.用于向数据库发送查询命令,建立下列哪个对象?(分数:2.00)A.ResultSetB.ConnectionC.State
7、mentD.以上都不是10.下列代表十六进制整数的是【 】(分数:2.00)A.0123B.1900C.fa00D.0xa211.下列选项中不属于软件生命周期开发阶段任务的是【 】(分数:2.00)A.软件测试B.概要设计C.软件维护D.详细设计12.在默认的 Java安全级别中,Applet 小程序不能执行下列哪种操作?(分数:2.00)A.从其所在的服务器上下载图形B.从其他服务器上下载图形C.从其他服务器上的 Web页装载到运行该小程序的浏览器中D.Applet使用自身的代码和 Applet浏览器提供的 Java API13.已知:inta=newint100;在下列给出的数组元素中,非
8、法的是【 】(分数:2.00)A.a0B.a1C.a99D.a10014.下列哪个包封装抽象窗口工具包,提供管理用户图形界面功能?(分数:2.00)A.“一事一地”的原则,即一个表描述一个实体或实体之间的一种联系B.用外部关键字保证有关联的表之间的联系C.表中的字段必须是原始数据和基本数据元素,并避免在表之间出现重复字段D.以上各原则都包括15.下列命令中,哪个命令是 Java的 API文档生成器?(分数:2.00)A.javaB.javacC.javapD.javadoc16.下列方法中可以用来创建一个新线程的是【 】(分数:2.00)A.实现 javalangRunnable 接口并重写
9、start()方法B.实现 javalangRunnable 接口并重写 run()方法C.继承 javalangThread 类并重写 run()方法D.实现 javalangThread 类并实现 start()方法17.下列关于容器和构件的说法不正确的是( )。(分数:2.00)A.所有的构件都可以通过 add()方法添加构件B.Java的图形界面的最基本组成部分是容器C.Panel不能作为最外层的容器单独存在,它首先必须作为一个构件放置到其他容器中,然后把它当作容器D.一个容器可以容纳多个构件,并使它们成为一个整体18.当 Frame的大小被改变时,Frame 中的按钮的位置可能被改变
10、,则使用下列哪一个布局管理器( )。(分数:2.00)A.BigMeaninglessNameB.intC.1 stD.119.java.nio包的新特点是内存映射技术、字符及编码、非阻塞 I/O和下列哪一项?(分数:2.00)A.显示图形信息B.显示文本内容C.显示文本和图形信息D.显示程序代码20.在软件开发中,下面任务不属于设计阶段的是【 】(分数:2.00)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型21.下列关于 Applet的安全限制的叙述中,错误的是【 】(分数:2.00)A.通常情况下,禁止 Applet读、写本地文件系统B.通常情况下,禁止
11、Applet向 Applet源主机之外的任何主机建立网络连接C.通常情况下,禁止 Applet读取系统信息D.通常情况下,禁 Applet加载本地库或方法22.下列关于 JavaApplication与 Applet的说法中,正确的是【 】(分数:2.00)A.都包含 main()方法B.都通过“appletviewer“命令执行C.都通过“iavac“命令编译D.都嵌入在 HTML文件中执行23.下列选项中哪个方法可以判断线程是否处于活动状态?(分数:2.00)A.0 0B.-5 0C.-1 6D.0 624.如要求读取大文件的中间一段内容,最方便的是采用下列哪种流来操作?(分数:2.00)
12、A.File StreamB.Pipe StreamC.Random StreamD.Filter Stream25.如果一个类实现 Runnable接口,则这个类必须包含哪些方法?(分数:2.00)A.abcdefB.afbecdC.fedcbaD.defabc26.在 Java中,用 package语句说明一个包时,该包的层次结构必须是【 】(分数:2.00)A.与文件的结构相同B.与文件目录的层次相同C.与文件类型相同D.与文件大小相同27.在默认的 Java安全级别中,Applet 小程序不能执行下列哪种操作?(分数:2.00)A.是一种一体化语言B.是一种高度过程化的语言C.语言非常
13、简洁D.可以直接以命令方式交互使用,也可以程序方式使用28.下列程序的功能是把 316表示为两个加数的和,使两个加数分别能被 13和 11整除,则在划线处应填入的选项是( )。 int i=0,j,k; do i+;k=316-13*i;while (_); j=k/11; Systemoutpfintln(i+“,“+j); (分数:2.00)A.0B.23C.34D.2529.关于字节 I/O流,下列叙述不正确的是( )。(分数:2.00)A.字节数据来自于二进制文件B.DataOutStream的方法 flush( )的功能是清空输出流,并把缓冲全部内容写入输出流中C.字节输入流首先要实
14、现 Datalnput接口D.所有的字节输出流都继承于 Writer类30.有定义 int n=789;,下列表达式结果为 8的是( )。(分数:2.00)A.n/102B.(n-n10)/100C.n10D.n100/1031.下列程序段执行后 c的结果是( )。 int a=9,b=11,c; C=a!=b? a+b:a-b; (分数:2.00)A.-2B.20C.11D.932.下列程序的执行结果是( )。 public class Testcc public static void main (String args ) Systemoutprintln(2135f%4.0f); (分
15、数:2.00)A.1.5B.1C.1.0D.0.533.下列关于滚动条说法有误的是( )。(分数:2.00)A.每次移动滚动条时改变的数值,它是封装在内部的整型变量B.滚动条的方向有两个静态变量 horizontal和 vertical规定,前者是水平方向,后者是竖直方向C.滚动条的默认方向是水平方向D.public void addAdjustmentListener(AdjustListener x)为滚动条注册事件监听器,x 为实现了接口AdjustmentListener的类的实例34.下列是几个 Java语言最常用的命令,哪个命令是 Java语言的编译命令?(分数:2.00)A.0B
16、.1C.2D.335.按照 Java的标识符命名规则,下列表示一个类的标识符正确的是【 】(分数:2.00)A.HelloworldB.HelloWorldC.helloworldD.helloWorld二、填空题(每空 2分,共 30分)(总题数:15,分数:30.00)36.凡生成 StringBuffer一个对象后,还可用 1 方法或 ensureCapacity2方法来设定缓 存大小。(分数:2.00)填空项 1:_37.设有数组定义:int a = 1l,22,33,44,55,66,77,88,99;则执行下列几个语句后的输出结果是 1。 for( int i= 0 ;i 0) S
17、ystem.out.println(“first“); else if (x -4) System.out.println(“second“); else System.out.println(“third“); x 的取值在什么范围内时,将打印出字符串“second“? (分数:2.00)A.在数据库中使用 USE命令打开或关闭视图B.在“浏览器”窗口中可以显示或修改视图中的数据C.视图不能作为文本框、表格等控件的数据源 D.可以使用 SQL语句操作视图解析:利用视图可以实现多表查询,可以更新表数据,也可以作为查询数据源,但不会产生磁盘文件,它是保存在数据库中的文件。2.下列程序的执行结果是
18、( )。 public class Testbb public static void main(String args ) System.out.println(5/2.5); (分数:2.00)A.“自动报表”B.“报表向导” C.“图标向导”D.“标签向导”解析:PicturePrint“计算机技术”语句实现的功能是将字符串“计算机技术”在图片框上显示出来,所以选项 A)不正确;Print“计算机技术”语句的作用是将字符串“计算机技术”直接输出到当前窗体上,所以选项 A)正确;PrinterPrint“计算机技术”语句实现的功能是将字符串“计算机技术”输出到打印机上,所以选项 C)不正确
19、;DebugPrint“计算机技术”语句实现的功能是将字符串“计算机技术”在立即窗口中显示出来,所以选项 D)也不正确。3.下列程序段执行后的输出结果为( )。 int x=3; int y=10; System.out.println(yx);(分数:2.00)A.所有的构件都可以通过 add()方法添加构件B.Java的图形界面的最基本组成部分是容器 C.Panel不能作为最外层的容器单独存在,它首先必须作为一个构件放置到其他容器中,然后把它当作容器D.一个容器可以容纳多个构件,并使它们成为一个整体解析:与普通类一样,内部类也具有自己的成员方法和成员变量。内部类是指在一个类的内部嵌套定义的
20、类,与普通类一样,内部类也具有自己的成员方法和成员变量。但它也有与普通类不同的地方:内部类可以使用它所在类的静态变量和成员变量,也可以使用它所在类的方法中的局部变量。内部类的类名只能定义在它的类或程序段巾或在表达式内部匿名使用,外部使用它时必须给出类的全名。内部类可用abstract修饰定义为抽象类,也可以用 private或 protected定义。内部类可作为其他类的成员,而且可访问它所在类的成员。除 static内部类外,不能在类内声明 static成员。一旦内部类声明为static,就变成顶层类,不能再使用局部变最。这时可声明 stage成员。 4.下列程序的执行结果是( )。 pub
21、lic class Testgg public static void main(String args) float t=9.0f; int q=5; System.out.println(t+)*(- -q); (分数:2.00)A.40B.36C.36 D.40解析:定义 float t=90f 和 int q=5;而程序要求输出(1+)*(- -q)的值,这样结果一定是一个浮点型的数。注意:选项 A)40,选项 B)36都错误的认为结果应是 int型的,而选项 D)400 对 1+和- -q 的计算过程理解错了,(t+ +)*(- -q)=90*4=360,这样我们便可以选出正确答案了
22、。5.在下列 AWT的基本构件中,哪一个为下拉式菜单组件的名称?(分数:2.00)A.ButtonB.Choice C.LabelD.Scroll解析:AWT 中有许多基本的构件,其中下拉式菜单(Choice)是具有每次只能选择其中一项的功能的构件,它能够节省显示空间,用于大量选择。Chioce 用 Item-Listener接口来进行监听。 6.给出下列的程序代码片段,下列的哪个选项是不正确的? public void create( ) Vector my; my=new Vector ( ); (分数:2.00)A.第二行的声明不会为变量 my分配内存空间B.第二行语句创建一个 Vect
23、or类对象 C.第三行语句创建一个 Vector类对象D.第三行语句为一个 Vector类对象分配内存空间解析:要为一个新对象分配空间必须执行 new Xxx( )调用,new 调用执行 以下的操作:为新对象分配空间并将其成员初始化为 0或者 null。执行类体中的初 始化(例如在类中有一个成员声明 int a=10;在第一步后 a=0,执行到第二步后 a=10)。 执行构造方法。变量被分配为一个到内存堆中的新对象的引用。7.阅读下面程序 1 public class Try extends Thread 2 public static void main(String args) 3 Try
24、 t=new Try(); 4 t.start(); 5 6 7 public void run(int j) 8 int i=0; 9 while(i5) 10 System.out.println(“祝你成功!”); 11 i+; 12 13 14 该程序要求打印 5行“祝你成功!”,必须改正程序中的某行代码,程序才能完成。选择正确的修改是【 】 (分数:2.00)A.将第 1行的 extendsThread改为 implementsRunnableB.将第 3行的 newTry()改为 newThread()C.将第 4行 t.start()改为 start(t)D.将第 7行的 pub
25、licvoidrun(intj)改为 publicvoidrun() 解析: 本题考查线程的创建。Java 语言中提供两种创建线程的方法,一种是通过实现 Runnable接口来创建线程,另一种是通过继承 Thread类创建线程。显然,题目中的程序是使用第二种方法来创建线程。Thread类中定义了 run()方法,所以通过继承 Thread 类来创建线程时还要重写 Thread类中的 run()方法。而 run()方法的定义如下: public void run() 题目中的代码比较简单,就是创建了一个线程,这个线程完成的操作就是打印 5行“祝你成功”。仔细阅读程序,不难发现第 7行有错。在 r
26、un()方法的定义中是没有参数的,而题目程序中的 run方法却带有一个参数。因此,要把第 7行的代码改为“public void run()”。因此,本题的正确答案是 D。 8.给出下列的程序,其叙述正确的是( )。 public class Man static int arr = new int10; public static void main(String a ) System.out.println(arr1 ); (分数:2.00)A.Visual Foxpro支持两种索引文件:单一索引文件和复合索引文件B.打开和关闭索引文件均使用 SET INDEX TO命令C.索引的类型有主
27、索引、候选索引、惟一索引和普通索引D.索引文件不随库文件的关闭而关闭 解析:在 Java中定义并创建一个数组对象的语句格式是 arrayName=new typearraySize);,而选项 D)中,把定义创建数组对象和静态初始化数组对象混为一谈。注意:所谓数组的初始化是指对已定义好的数组元素进行赋值。有静态初始化和动态初始化两种。9.用于向数据库发送查询命令,建立下列哪个对象?(分数:2.00)A.ResultSetB.ConnectionC.Statement D.以上都不是解析:在数据库程序中,Statement 对象代表了用 SQL编写的数据库操作用于向数据库发送查询的命令。Resu
28、ltSet对象用来处理结果,Connection 对象用来建立与数据库的连接。 10.下列代表十六进制整数的是【 】(分数:2.00)A.0123B.1900C.fa00D.0xa2 解析: 本题考查 Java语言中的整型常量。题目不难,属于学习程序设计语言的基础,应该有所了解。整型常量有 3种书写格式:十进制整数,如 123,-30,365;八进制整数:以 0开头,如 011表示十进制的9;十六进制整数:以 0x或 OX开头,如 0X123 表示十进制数 291。由此可见,选项 D表示的是十六进制整数,选项 C不是整数形式,选项 B是十进制整数,选项 A是八进制整数,只有选项 D为本题正确选
29、项。11.下列选项中不属于软件生命周期开发阶段任务的是【 】(分数:2.00)A.软件测试B.概要设计C.软件维护 D.详细设计解析:软件生命周期由软件定义、软件开发和软件维护三个时期组成,每个时期又进一步划分为若干个阶段。软件定义时期的基本任务是确定软件系统的工程需求。软件定义可分为软件系统的可行性研究和需求分析两个阶段。软件开发时期是具体设计和实现在前一时期定义的软件,它通常由下面五个阶段组成:概要设计、详细设计、编写代码、组装测试和确认测试。软件维护时期的主要任务是使软件持久地满足用户的需要。即当软件在使用过程中发现错误时应加以改正;当环境改变时应该修改软件,以适应新的环境;当用户有新要
30、求时应该及时改进软件,以满足用户的新要求。根据上述对软件生命周期的介绍,可知选项C中的软件维护不是软件生命周期开发阶段的任务。因此,本题的正确答案是 C。12.在默认的 Java安全级别中,Applet 小程序不能执行下列哪种操作?(分数:2.00)A.从其所在的服务器上下载图形B.从其他服务器上下载图形 C.从其他服务器上的 Web页装载到运行该小程序的浏览器中D.Applet使用自身的代码和 Applet浏览器提供的 Java API解析:除了所在的服务器外,Applet 不能连接到任何其他的机器。13.已知:inta=newint100;在下列给出的数组元素中,非法的是【 】(分数:2.
31、00)A.a0B.a1C.a99D.a100 解析: 本题考查 Java中数组的概念。对于数组的掌握,不能仅仅停留在概念上,更多的是能将所学的知识灵活运用。inta=new int100定义了一个数组 a,含有 100个整型元素。在 Java中,数组元素的下标是从 0开始的,因此上面定义的数组实际上下标是从 099,所以选项 D错误。14.下列哪个包封装抽象窗口工具包,提供管理用户图形界面功能?(分数:2.00)A.“一事一地”的原则,即一个表描述一个实体或实体之间的一种联系B.用外部关键字保证有关联的表之间的联系C.表中的字段必须是原始数据和基本数据元素,并避免在表之间出现重复字段D.以上各
32、原则都包括 解析:Filter stream 类是提供同步访问的机制,并且对读取的内容进行处理后再输出。选项 A) File Stream,作为普通的文件流,没有对读取的数据做特殊的处理。选项 B)Pipe Stream要求管道的输入和输出必须接好,然后进行大量的数据的传输,不需要对传输的数据做特殊的处理。选项 C) Randam Stream随机文件流是应用于文件的随机访问,也不需要将读取的内容进行处理后再输出。 15.下列命令中,哪个命令是 Java的 API文档生成器?(分数:2.00)A.javaB.javacC.javapD.javadoc 解析:javadoc 的基本功能是文档生成
33、,也就是将类之间的关系用文档形式记载下来。这对于后期维护和开发有很大的帮助。16.下列方法中可以用来创建一个新线程的是【 】(分数:2.00)A.实现 javalangRunnable 接口并重写 start()方法B.实现 javalangRunnable 接口并重写 run()方法C.继承 javalangThread 类并重写 run()方法 D.实现 javalangThread 类并实现 start()方法解析:本题考查考生对创建线程的使用。创建线程有两种方法:通过实现 Runnable接口创建线程和通过继承 Thread类创建线程。通过实现 Runnable接口创建线程,当实现 R
34、unnable接口的类的对象用来创建线程以后,该线程的启动将使得对象的 run()方法被调用。通过继承 Thread类创建线程,可以通过继承Thread类,并重写其中的 rrn()方法定义线程体,然后创建该子类的对象创建线程。线程创建是考试重点内容,务必掌握。17.下列关于容器和构件的说法不正确的是( )。(分数:2.00)A.所有的构件都可以通过 add()方法添加构件B.Java的图形界面的最基本组成部分是容器 C.Panel不能作为最外层的容器单独存在,它首先必须作为一个构件放置到其他容器中,然后把它当作容器D.一个容器可以容纳多个构件,并使它们成为一个整体解析:在 Java语言的图形界
35、面中最基本组成部分是构件。注意:其实,容器本身也是一种构件,具有构件的所有性质,另外还具有放置其他构件和容器的功能。在实际编程中,往往采用的是容器类 Container的子类。18.当 Frame的大小被改变时,Frame 中的按钮的位置可能被改变,则使用下列哪一个布局管理器( )。(分数:2.00)A.BigMeaninglessNameB.intC.1 st D.1解析:keytool 工具不仅是管理密钥库和证书的命令,而且还可以产生密钥,输出签名者的公钥证书等功能。 19.java.nio包的新特点是内存映射技术、字符及编码、非阻塞 I/O和下列哪一项?(分数:2.00)A.显示图形信息
36、 B.显示文本内容C.显示文本和图形信息D.显示程序代码解析:在项目管理器窗口上有 6个按钮,分别是新建、添加、修改、浏览(运行)、移去和连编按钮,但不具有重命名文件的功能。20.在软件开发中,下面任务不属于设计阶段的是【 】(分数:2.00)A.数据结构设计B.给出系统模块结构C.定义模块算法D.定义需求并建立系统模型 解析:数据结构设计、给出系统模块结构以及定义模块算法都属于设计阶段,而定义需求并建立系统模型属于分析阶段。21.下列关于 Applet的安全限制的叙述中,错误的是【 】(分数:2.00)A.通常情况下,禁止 Applet读、写本地文件系统B.通常情况下,禁止 Applet向
37、Applet源主机之外的任何主机建立网络连接C.通常情况下,禁止 Applet读取系统信息 D.通常情况下,禁 Applet加载本地库或方法解析:本题考查 Applet的安全限制。许多浏览器为了保护本地主机,一般情况下,对 Applet作了如下安全限制:Applet 不能运行任何本地可执行程序;禁止 Applet读、写本地计算机的文件系统;禁止加载本地库或方法。Applet 只能使用自身的代码或 Applet 浏览器提供的 Java API:禁止向提供 Applet之外的任何主机建立网络连接;不能读取某些系统信息。除了 Java版本号、操作系统名等一些简单信息外,Applet不能获得与本地计算
38、机有关的任何信息。根据上述介绍可知,Applet 只能读取有限的系统信息,但不是一点儿都不能读取。因此,本题的正确答案是 C。22.下列关于 JavaApplication与 Applet的说法中,正确的是【 】(分数:2.00)A.都包含 main()方法B.都通过“appletviewer“命令执行C.都通过“iavac“命令编译 D.都嵌入在 HTML文件中执行解析:本题考查 Java Application与 Applet的区别。Applet 与 Application的主要区别在执行方式上,Application以 main()方法为入口点运行,Applet 要在浏览器或 apple
39、tviewer 中运行,运行过程比Application更复杂。两者都是通过“javac“命令编译,所以只有选项 C说法正确。23.下列选项中哪个方法可以判断线程是否处于活动状态?(分数:2.00)A.0 0B.-5 0C.-1 6 D.0 6解析:函数的参数不仅可以是整型、实型、字符型等数据,还可以是指针类型。它的作用是将一个变量的地址传送到另一个函数中去。在本题解析中,我们试图将这一问题解释清楚! 大家可以考虑一下利用下面这函数可不可以实现 a和 b的互换。 swap(int x,int y) int t; t=x; x=y; y=t 如果在 main函数中用 swap(a,B) ,会有什
40、么结果呢?在函数调用开始时,a 的值传送给 x,b 的值传递给 y。执行完 swap( )函数后,x 和 y的值是互换了,但 main( )函数中的 a和 b并未互换。也就是说由于“单向传递”的“值传递”方式,形参值的改变无法传递给实参。 为了使在函数中改变了的变量值能被 main( )函数所用,不能采取上述办法,而应该用指针变量做函数参数。在函数执行过程中使指针变量所指向的变量值发生变化,函数调用结束后,这些变量值的变化被保留下来,这样就实现了调用函数改变变量的值,在主调函数中使用这些改变了的值的目的。 swap(int *p1,int *P2) int p; p= *p1; *p1=*P2
41、; *P2=p; 注意交换。p1 和:p2的值是如何实现的,如果写成下面这样就有问题了! swap(int *P1,int *p2) int *p; *P=*p1;/ *此语句有问题:*/ *p1=*p2; *p2=*p; * P1 就是 a,是整型变量。而*p 是指针变量 P所指向的变量,但 P中并无确切地址,用*p 可能会造成破坏系统的正常工作状态。应该将* p1 的值赋给一个整型变量,用整型变量作为过渡变量实现*P1 和*p2 的交换。 24.如要求读取大文件的中间一段内容,最方便的是采用下列哪种流来操作?(分数:2.00)A.File StreamB.Pipe StreamC.Rand
42、om Stream D.Filter Stream解析:随机文件流提供了访问文件中任意一段位置。如果是一个比较大的文件,我们采用略去前面不必要的内容,直接去读取需要的内容,随机文件流提供了这样的方法,这样会有很多的时间和资源。所以我们用 Random Stream来访问这个文件。在 Random Stream中有一个方法 public int skipBytes(int n)throws IOException,随机文件访问跳过指定的字节。这个方法比较有用,在本题的情况下,用它比较快捷的读取必要的内容。 25.如果一个类实现 Runnable接口,则这个类必须包含哪些方法?(分数:2.00)A
43、.abcdefB.afbecd C.fedcbaD.defabc解析:* p 为所指对象 a的值,语句“b=+a+;”等价于“b=b+a;a=a+1;”。 26.在 Java中,用 package语句说明一个包时,该包的层次结构必须是【 】(分数:2.00)A.与文件的结构相同B.与文件目录的层次相同 C.与文件类型相同D.与文件大小相同解析:本题考查 Java包的概念。Java 采用包来管理类名空间,为编程提供一种命名机制,也是一种可见性限制机制。定义一个包要用 package关键字,用 package语句说明一个包时,该包的层次结构必须与文件目录的层次相同。否则,在编译时可能出现查找不到的
44、问题,所以选项 B正确。27.在默认的 Java安全级别中,Applet 小程序不能执行下列哪种操作?(分数:2.00)A.是一种一体化语言B.是一种高度过程化的语言 C.语言非常简洁D.可以直接以命令方式交互使用,也可以程序方式使用解析:友元函数是独立于当前类的外部函数,但它可以访问该类的所有对象 的成员;拷贝构造函数是使用已存在的对象初始化正在生成的对象时调用的成员函数。28.下列程序的功能是把 316表示为两个加数的和,使两个加数分别能被 13和 11整除,则在划线处应填入的选项是( )。 int i=0,j,k; do i+;k=316-13*i;while (_); j=k/11;
45、Systemoutpfintln(i+“,“+j); (分数:2.00)A.0B.23 C.34D.25解析:本题考查的是递归函数的使用,题中递归函数的结束条件为 n29.关于字节 I/O流,下列叙述不正确的是( )。(分数:2.00)A.字节数据来自于二进制文件B.DataOutStream的方法 flush( )的功能是清空输出流,并把缓冲全部内容写入输出流中C.字节输入流首先要实现 Datalnput接口D.所有的字节输出流都继承于 Writer类 解析:所有的字节输出流都继承于 OutputStream类。30.有定义 int n=789;,下列表达式结果为 8的是( )。(分数:2.
46、00)A.n/102B.(n-n10)/100C.n10D.n100/10 解析:/比的优先级要高。注意:n/102 的结果应是 0,n/10 结果为 78,用 78在除以 2求余则得0;(n- n10)/100 的结果应是 7,n10 得 9,780/100 得 7;n10 的结果显而易见是 9。31.下列程序段执行后 c的结果是( )。 int a=9,b=11,c; C=a!=b? a+b:a-b; (分数:2.00)A.-2B.20 C.11D.9解析:三目运算符是用“?”和“:”表示,其一般的形式为:expressionl? expres sion2:expression3,其中 e
47、xpressionl应该是关系或布尔逻辑表达式,其计算结果为布尔值。如果该值为 true,则计算表达式 expression2,并将计算结果作为整个条件表达式的结果;如果为 false,则计算表达式 expression3,并将计算结果作为整个条件表达式的结果。注意:对三目运算符的用法掌握,a!=b是一个布尔逻辑表达式。32.下列程序的执行结果是( )。 public class Testcc public static void main (String args ) Systemoutprintln(2135f%4.0f); (分数:2.00)A.1.5 B.1C.1.0D.0.5解析:在
48、 Java中,取模运算符,其操作数可以是浮点数,如 45410=54。33.下列关于滚动条说法有误的是( )。(分数:2.00)A.每次移动滚动条时改变的数值,它是封装在内部的整型变量B.滚动条的方向有两个静态变量 horizontal和 vertical规定,前者是水平方向,后者是竖直方向C.滚动条的默认方向是水平方向 D.public void addAdjustmentListener(AdjustListener x)为滚动条注册事件监听器,x 为实现了接口AdjustmentListener的类的实例解析:滚动条的方向由两个静态变量 horizontal和 vertical规定,前者是水平方向,后者是竖直方向。滚动条的默认方向是竖直方向。34.下列是几个 Java语言最常用的命令,哪个命令是 Java语言的编译命令?(分数:2.00)A.0B.1 C.2D.3解析:三目运算符是用“