1、计算机二级(Java)35 及答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.在 Applet 被下载时调用,一般用来完成所有必需的初始化操作的方法是( )。(分数:2.00)A.Java 中的方法的参数传递是传值调用,而不是地址调用B.方法体是对方法的实现,包括变量声明和 java 的合法指令C.如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自动生成空的构造方法D.类的私有方法不能被其子类直接访问2.下列程序执行后,字符串 s 应是( )。 String greets=“hello“;
2、 String s=greetssubstring(0,3); (分数:2.00)A.查询 99 年 1 月之前参加工作的职工B.查询 99 年 12 月之后参加工作的职工C.查询 99 年参加工作的职D.查询 99 年 1 月和 2 月参加工作的职工3.下列有关继承的说法不正确的是( )。(分数:2.00)A.实例变量是类的成员变量B.实例变量用关键字 static 声明C.在方法中定义的局部变量在该方法被执行时创建D.局部变量在使用前必须被初始化4.下列字符常量中,哪个表示反斜杠字符“/”?(分数:2.00)A./B./“C./D./5.关于被私有访问控制符 private 修饰的成员变量
3、,下列说法正确的是( )。(分数:2.00)A.int a;bB.float a,b1=123f;C.char ch=d;D.public int i=100,j;6.如果创建的一个子类覆盖一个父类 public 方法,则对该方法可以使用哪些修饰符修饰?(分数:2.00)A.还未打印的报表页数B.已经打印的报表页数C.当前打印的报表日期D.当前打印的报表页数7.下列标识符中哪项是不合法的?(分数:2.00)A.BigMeaninglessNameB.intC.1 stD.18.下列的变量定义中,错误的是( )。(分数:2.00)A.int_a=123;B.int i=IntegerMAX_ V
4、ALUE;C.long j;12345678900L;D.statici=100;9.javautil 包中 Date 对象表示时间默认顺序是( )。(分数:2.00)A.年、星期、月、日、小时、分、秒B.秒、分、小时、日、月、星期、年C.小时、分、秒、星期、月、日、年D.星期、月、日、小时、分、秒、年10.下列关于使用内部类的原因叙述中不正确的是( )。(分数:2.00)A.Java 语言中所有的异常都必须由程序员通过 try-catch-finally 语句实现B.Java 中异常可以被继承C.程序员可以通过继承 Exception 类定义自己的异常D.异常在 Java 中是有层次的11.
5、在 AWT 了组件中,为了实现单选按钮的功能,除了用到 Checkbox 组件以外,还需要用到下列哪个组件? (分数:2.00)A.ChioceB.ButtonC.JRadioButtonD.CheckboxGroup12.getSize( ).width 指的是什么?(分数:2.00)A.界面组件的窗口宽度B.在 Java 中任何图形用户界面的宽度C.框架的窗口宽度D.用户显示器的宽度13.下列哪个选项不是 Java 的保留字?(分数:2.00)A.StyleB.CaptionC.EnabledD.Default14.下列程序执行后,b 的值应是( )。 public class Tests
6、s public static void main(String args) unsigned byte b=0; b- -; System.out.println(“b=“+b); (分数:2.00)A.-1B.255C.127D.编译错误15.下列程序段执行后 c 的结果是( )。 int a=9,b=11,c; C=a!=b? a+b:a-b; (分数:2.00)A.1 5B.14 6C.a bD.10 2516.下列数据结构中,能用二分法进行查找的是【 】(分数:2.00)A.顺序存储的有序线性表B.线性链表C.二叉链表D.有序线性链表17.下列哪个选项是 short 型数据的取值范围
7、?(分数:2.00)A.-128+127B.-32768 +32767C.-2147483648 +2417483647D.-3.40282347E38 +3.40282347E3818.下列关于 Java 语言的数据类型和表达式的说法不正确的是( )。(分数:2.00)A.LEN(“2003/04/15“)B.OCCURS(“电脑“,“计算机俗称电脑“)C.AT(“Fox“,“Visual FoxPro“)D.LIKE(“a *”,“abcd“)19.下列哪个流是为了把一个程序、线程和代码段的输出连接到另一个程序、线程或代码段的输入? (分数:2.00)A.abcdefB.afbecdC.f
8、edcbaD.defabc20.设有如下关系表: (分数:2.00)A.T=RSB.T=RSC.T=RSD.T=R/S21.下列哪个选项是 main( )方法的返回值类型?(分数:2.00)A.Const a As Single=11B.Const a=“OK“C.Const a As Double=Sin(1)D.Const a As Integer=“12“22.关于提高编程的效率,下列说法中不正确的是( )。(分数:2.00)A.5 0 6 4B.0 0 6 4C.5 0 6 2D.0 0 6 223.下列哪一个方法是自动调整窗口的大小?(分数:2.00)A.frame.setSize(
9、)B.frame.setDefaultClose()C.frame.pack()D.frame.setVisible()24.按运算符操作数的数目划分,运算符?:的类型是【 】(分数:2.00)A.三元B.二元C.四元D.一元25.设有下列两个类的定义,则类 Person 和类 Man 的关系是( )。 class Person long id;/ / 身份证号 String name;/ / 姓名 class Man extends Person int age;/ / 年龄 int getScore( ) return score; (分数:2.00)A.-3 3B.5 -9C.3 -3D
10、.-6 526.下列选项中的变量已正确定义,则表达式不合法的是(分数:2.00)A.新建一个数据库B.新建一个数据库表C.打开相关的数据库D.打开相关的数据表27.给出下列的不完整的类代码,则下列的哪个语句可以加到横线处? class Person String name,department; int age; public Person( String n ) name = n; public Person( String n,int a ) name = n;age = a; public Person( String n,String d,int a ) _ department =
11、d; (分数:2.00)A.Person(n,a);B.this(Person(n,a) );C.this(n,a);D.this(name,age);28.下列命令中,哪个命令能为远程对象生成 stub 和 skeleton?(分数:2.00)A.CardLayoutB.BorderLayoutC.FlowLayoutD.GridLayout29.下列说法不正确的是( )。(分数:2.00)A.在 Java 中,常量 null 和 true 都需要小写B.浮点型数据小数位数 bit 越多,表示数的精度越高C.布尔型数据在内存中占两位D.Unicode 字符集要比 ASCII 集更丰富,它们是
12、 16 位无符号数据30.下列命令中,哪个命令是 Java 的 API 文档生成器?(分数:2.00)A.float f = 11.1;B.double d = 5.3E12;C.float d=3.14f;D.double f = 11.1E10f;31.与 Applet 生命周期相关的方法的数量是【 】(分数:2.00)A.4 种B.3 种C.2 种D.5 种32.下列叙述中正确的是【 】(分数:2.00)A.软件交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令33.下列哪项是将一个十六进制值赋值给一个
13、long 型变量?(分数:2.00)A.long number = 123L;B.long number = 0123;C.long number = 0123L;D.long number = 0xl23L;34.下列叙述中,错误的是【 】(分数:2.00)A.父类不能替代子类B.子类能够替代父类C.子类继承父类D.父类包含子类35.下列关于变量的叙述哪个是错的?(分数:2.00)A.实例变量是类的成员变量B.实例变量用关键字 static 声明C.在方法中定义的局部变量在该方法被执行时创建D.局部变量在使用前必须被初始化二、填空题(每空 2 分,共 30 分)(总题数:15,分数:30.0
14、0)36. 1 的任务是诊断和改正程序中的错误。 (分数:2.00)填空项 1:_37.设 a = 8,则表达式 a 2 的值是 1。(分数:2.00)填空项 1:_38.下列程序的功能是显示用户在命令行方式下指定的任意驱动器目录,请补充程序。 import javai.*; public class FindDirectories public static void main (String args ) if(argslength= =0) args=new String “; try File pathName=new File(args 0); StringfileName=path
15、Namelist1; for(int i=0;fileNamelength;i+ + File f=new 2 if(f.isDirectory3) Systemoutprintln(f.getCanonicalPath4); main(new String f.getPath5 ); catch(IOException e) eprintStackTrace6; (分数:2.00)填空项 1:_39.Throwable 类分为 1 和 Exception 两个子类。(分数:2.00)填空项 1:_40.catch 子句都带有一个参数,该参数是某个异常的类及其变量名,catch 用该参数去与抛
16、出异常对象的类进行 1。 (分数:2.00)填空项 1:_41.滚动窗口 JScrollPane 是带动滚动条的面板,主要是通过移动 1 来实现的。(分数:2.00)填空项 1:_42. 1 是 Java 程序中基本的结构单位。(分数:2.00)填空项 1:_43.下列程序的运行结果是 1。 import java.io.*; public class abc public static void main(Stringargs ) String s1 = “Hello!“; System.out.println(s1.toUpperCase2 ); (分数:2.00)填空项 1:_44.表达
17、式 2*5/25,10/2*5,1/23 和 5/3 的计算结果分别是 1。(分数:2.00)填空项 1:_45.Applet 生命周期方法有 init1, 23,stop4 和 destroy5。(分数:2.00)填空项 1:_46.下列的程序的功能是简单的进行键盘输入测试,请补充完整程序。 import javaxswing*; public class Testzzz public static void main(String args) String name=JOptionPane. 1 (“What is your name?“); Systemoutprintln(“Hello
18、“+name); Systemexit(0); (分数:2.00)填空项 1:_47.下列是一个 Java 应用程序,填空使它的功能是计算 s=1+2+3+4+100。 public class Testkk public static void main(String args) int s=0; for(int i=1;i=100;i+) s+= 1; System.out.println(“S=“+s); (分数:2.00)填空项 1:_48.对话框(Dialog)是 1 类的子类。(分数:2.00)填空项 1:_49.写出下列程序的执行结果是 1。 已知:a转换成整数对应的是 97。
19、程序如下: class Testl public static void main(String args) char a=d; int b=a; float c=a; double d=a; System.out.println(“a=“+a); System.out.println(“b=“+b); System.out.println(“c=“+c); System.out.println(“d=“+d); (分数:2.00)填空项 1:_50.使用 Swing 编写 Applet,则该 Applet 的主类应该定义为 1 类的子类。(分数:2.00)填空项 1:_计算机二级(Java)
20、35 答案解析(总分:100.00,做题时间:120 分钟)一、选择题(每小题 2 分,共 70 分) 下列各(总题数:35,分数:70.00)1.在 Applet 被下载时调用,一般用来完成所有必需的初始化操作的方法是( )。(分数:2.00)A.Java 中的方法的参数传递是传值调用,而不是地址调用B.方法体是对方法的实现,包括变量声明和 java 的合法指令C.如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自动生成空的构造方法 D.类的私有方法不能被其子类直接访问解析:为达到运行的要求,运行时出现的异常,实际是直接交给 JVM 系统来处理的,而 Exception 类的非运
21、行异常,则要求编写程序必须捕获和声明。所以在 Java 语言中不是所有的异常都必须由程序员通过try-catch-finally 语句实现。2.下列程序执行后,字符串 s 应是( )。 String greets=“hello“; String s=greetssubstring(0,3); (分数:2.00)A.查询 99 年 1 月之前参加工作的职工B.查询 99 年 12 月之后参加工作的职工C.查询 99 年参加工作的职 D.查询 99 年 1 月和 2 月参加工作的职工解析:系统变量_PAGENO 的返回值是当前打印的报表页数。3.下列有关继承的说法不正确的是( )。(分数:2.00
22、)A.实例变量是类的成员变量B.实例变量用关键字 static 声明 C.在方法中定义的局部变量在该方法被执行时创建D.局部变量在使用前必须被初始化解析:编辑框实际上是一个完整的字处理器,可进行选择、剪切、粘贴及复制正文等操作,但在编辑框中只能输入和编辑字符型数据。4.下列字符常量中,哪个表示反斜杠字符“/”?(分数:2.00)A./B./“C./ D./解析:在 Java 语言中反斜杠用“/表示。注意:Java 语言需要用转义字符来表示一些特殊的字符,转义字符都以反斜扛 (/)来开始,如“/n”表示换行符等。5.关于被私有访问控制符 private 修饰的成员变量,下列说法正确的是( )。(
23、分数:2.00)A.int a;b B.float a,b1=123f;C.char ch=d;D.public int i=100,j;解析:在给变量定义时,一定要说明变量的类型,不然计算机无法识别出到底是哪种类型。选项 A) ingt_a=123;标识符是以字母、下划线和美元符作为首字符的字符串序列,在首字母后面可以跟字母,下划线、美元符和数字。选项 B) int i;IntegerMAX_VALUE;IntegerMAX_VALUE 表示 int 型的最大值。选项 C) long j=12345678900L j 并没有超出 long 型的范围。 6.如果创建的一个子类覆盖一个父类 pu
24、blic 方法,则对该方法可以使用哪些修饰符修饰?(分数:2.00)A.还未打印的报表页数B.已经打印的报表页数C.当前打印的报表日期D.当前打印的报表页数 解析:在 Visual FoxPro 中,惟一索引是为了保持同早期版本的兼容性。它的“惟一性”是指索引项的惟一,而不是字段值的惟一,即重 复的索引字段值只有惟一一个值出现在索引项中。7.下列标识符中哪项是不合法的?(分数:2.00)A.BigMeaninglessNameB.intC.1 st D.1解析:在 Java 中标识符是赋予变量、对象、类和方法的名称。标识符可 以由字母、数字、下划线“_”和美元符“”组成,但数字不能开头,不能用
25、关键字做标识符。8.下列的变量定义中,错误的是( )。(分数:2.00)A.int_a=123;B.int i=IntegerMAX_ VALUE;C.long j;12345678900L;D.statici=100; 解析:在给变量定义时,一定要说明变量的类型,不然计算机无法识别出到底是哪种类型。选项 A) ingt_a=123;标识符是以字母、下划线和美元符作为首字符的字符串序列,在首字母后面可以跟字母,下划线、美元符和数字。选项 B) int i;IntegerMAX_VALUE;IntegerMAX_VALUE 表示 int 型的最大值。选项 C) long j=1234567890
26、0L j 并没有超出 long 型的范围。 9.javautil 包中 Date 对象表示时间默认顺序是( )。(分数:2.00)A.年、星期、月、日、小时、分、秒B.秒、分、小时、日、月、星期、年C.小时、分、秒、星期、月、日、年D.星期、月、日、小时、分、秒、年 解析:javautil 包中 Date 对象表示时间的顺序是星期、月、日、小时、分、秒、年。10.下列关于使用内部类的原因叙述中不正确的是( )。(分数:2.00)A.Java 语言中所有的异常都必须由程序员通过 try-catch-finally 语句实现 B.Java 中异常可以被继承C.程序员可以通过继承 Exception
27、 类定义自己的异常D.异常在 Java 中是有层次的解析:Java 中不允许用 0 和 1 来代替 true 和 false。true 和 false 是布尔型,而 0 是整数类型,它们在计算机中存储的位数就不同,所以 Java 语言规定,这两个类型不能随便代替。注意:位运算符中,的优先级最高,其次是和 ,在这里,没有 2 的值是 1。(分数:2.00)填空项 1:_ (正确答案:2)解析: 为不带符号的右移,8 的各比特位右移 2 位,左边的空位填 0。此题将 8 (1000)变为了2(0010)。38.下列程序的功能是显示用户在命令行方式下指定的任意驱动器目录,请补充程序。 import
28、javai.*; public class FindDirectories public static void main (String args ) if(argslength= =0) args=new String “; try File pathName=new File(args 0); StringfileName=pathNamelist1; for(int i=0;fileNamelength;i+ + File f=new 2 if(f.isDirectory3) Systemoutprintln(f.getCanonicalPath4); main(new String
29、f.getPath5 ); catch(IOException e) eprintStackTrace6; (分数:2.00)填空项 1:_ (正确答案:File(pathNamegetPath-|_|-,fileNamei))解析:有以下两个语句都可以创建一个文件,其中构造方法的参数,可以是路径文件名,也可以是路径和文件名。 File Pathname = new File(argeO);/路径文件名来建立文件对象 File f=new File (pathnamegetPath,fileNamei);/(路径,文件名) 本题中,采用第二种方法来创建文件。39.Throwable 类分为 1
30、 和 Exception 两个子类。(分数:2.00)填空项 1:_ (正确答案:Error)解析:Throwable 类分为 Error 和 Exception 两子类,Error 类包括包括动态连接失败、硬件设备和虚拟机出错等,通常的 Java 应用程序不会捕获和抛出这类异常,而是捕获和抛出 Exception 这类异常,它包括运行时出现的异常,并对这类异常作出处理。40.catch 子句都带有一个参数,该参数是某个异常的类及其变量名,catch 用该参数去与抛出异常对象的类进行 1。 (分数:2.00)填空项 1:_ (正确答案:匹配)解析:catch 子句都带有一个参数,该参数是某个异
31、常的类及其变量名,catch 用该参数去与抛出异常对象的类进行匹配。匹配上后就去执行该 catch 后的程序段,即处理该异常。 41.滚动窗口 JScrollPane 是带动滚动条的面板,主要是通过移动 1 来实现的。(分数:2.00)填空项 1:_ (正确答案:JViewport)解析:JScrollPane 是带动滚动条的面板,主要是通过移动 JViewport(视口)来实现的。JViewport 实际上是一种特殊的对象,用于查看基层构件,滚动条实际就是沿着构件移动 JViewport,同时描绘出它在下面的内容。 42. 1 是 Java 程序中基本的结构单位。(分数:2.00)填空项 1
32、:_ (正确答案:类或 class)解析:Java 是面向对象的语言,面向对象的思想是将客观事物都作为实体,而对象通过实体抽象得到。在 Java 程序中,并不是直接去构造对象,而是通过定义一个类,对类再创建对象。因此 Java 程序中基本的结构单位是类或 class。43.下列程序的运行结果是 1。 import java.io.*; public class abc public static void main(Stringargs ) String s1 = “Hello!“; System.out.println(s1.toUpperCase2 ); (分数:2.00)填空项 1:_
33、(正确答案:HELLO!)解析:在 String 类的常用方法中,toUpperCase-|_|-方法将当前字符串中的所有小写字 母转换成大写字母。 44.表达式 2*5/25,10/2*5,1/23 和 5/3 的计算结果分别是 1。(分数:2.00)填空项 1:_ (正确答案:4.0,2.5,0 和 1)解析:如果表达式中有不一样的数据类型,则寻找自动转换是优先级最高的一个,其他数值全部转换成这种数据类型,当然表达式的值也是这个数据类型。如 1/2*3,在这种情况下,结果肯定还是 int 型的,首先 1/2 得到 0,再*3。 45.Applet 生命周期方法有 init1, 23,sto
34、p4 和 destroy5。(分数:2.00)填空项 1:_ (正确答案:start)解析: 本题考查 Applet 的生命周期。Applet 声明周期是指从 Applet 下载到浏览器,到用户退出浏览器,终止 Applet 运行的过程。Apptet 生命周期方法包括 init-|_|-方法、 start-|_|-方法、stop-|_|-方法和 destroy-|_|-方法。46.下列的程序的功能是简单的进行键盘输入测试,请补充完整程序。 import javaxswing*; public class Testzzz public static void main(String args)
35、String name=JOptionPane. 1 (“What is your name?“); Systemoutprintln(“Hello“+name); Systemexit(0); (分数:2.00)填空项 1:_ (正确答案:showInputDialog)解析:javaxswing.JOptionPane 用于从控制台键盘读入字符串。如 String name=JOp-tionPaneshowlnputDialog(“What is your name?“)表示向用户提示“What is your name?“,然后等待用户输入,输入的字符串自动保存在 name 中。 47.
36、下列是一个 Java 应用程序,填空使它的功能是计算 s=1+2+3+4+100。 public class Testkk public static void main(String args) int s=0; for(int i=1;i=100;i+) s+= 1; System.out.println(“S=“+s); (分数:2.00)填空项 1:_ (正确答案:i)解析:巧用扩展赋值号+=。比如:a+=1;等价于 a=a+1。注意:类似这样的扩展赋值号还有*=,=等。48.对话框(Dialog)是 1 类的子类。(分数:2.00)填空项 1:_ (正确答案:Window)解析:主要
37、熟悉 AWT 基本构件的特点。对话框和一般窗口的区别在于它依赖于其 他窗口。49.写出下列程序的执行结果是 1。 已知:a转换成整数对应的是 97。 程序如下: class Testl public static void main(String args) char a=d; int b=a; float c=a; double d=a; System.out.println(“a=“+a); System.out.println(“b=“+b); System.out.println(“c=“+c); System.out.println(“d=“+d); (分数:2.00)填空项 1:_
38、 (正确答案:a=d b=100 c=1000 d=1000)解析:char 型在计算机内部是以 int 型存储的,所以知道“a”在计算机中对应的 int 型数据的值是97,那么很容易推算出“d”的对应值是 100。自动类型的转换,注意 float 和 double 型小数点后的零。50.使用 Swing 编写 Applet,则该 Applet 的主类应该定义为 1 类的子类。(分数:2.00)填空项 1:_ (正确答案:JApplet)解析:JApplet 是一个使 Applet 能够使用 Swing 构件的类,包含 Swing 构件的 Applet 必须是 JApplet 的子类。因此,本题的正确答案是 JApplet。