全国计算机等级考试二级Java模拟试卷及答案

  • 格式:doc
  • 大小:78.50 KB
  • 文档页数:12

全国计算机等级考试二级Java模拟试卷及答案

Java

一、选择题

(1)Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点?B

A)安全性 B)多线性 C)跨平台 D)可移植 (2)下列哪个类声明是正确的?D

A)abstract final class HI{} B)abstract private move(){}

C)protected private number; D)public abstract class Car{}

(3)下列关于for循环和while循环的说法中哪个是正确的?D

A)while循环能实现的操作,for循环也都能实现

B)while循环判断条件一般是程序结果,for循环判断条件一般是非程序结果

C)两种循环任何时候都可替换

D)两种循环结构中都必须有循环体,循环体不能为空 (4)异常包含下列那些内容?C

A)程序中的语法错误

B)程序的编译错误

C)程序执行过程中遇到的事先没有预料到的情况

D)程序事先定义好的可能出现的意外情况 (5)Character流与Byte流的区别是C

A)每次读入的字节数不同 B)前者带有缓冲,后者没有

C)前者是块读写,后者是字节读写 D)二者没有区别,可以互换使用

(6)在设计程序时,应采纳的原则之一是 D

A.不限制goto语句的使用 B.减少或取消注解行

C.程序越短越好 D.程序结构应有助于读者理解 (7)程序设计语言的基本成分是数据成分、运算成分、控制成分和 D

A.对象成分 B.变量成分

1

C.语句成分 D.传输成分 (8)下列叙述中,不属于软件需求规格说明书的作用的是 D

A.便于用户、开发人员进行理解和交流

B.反映出用户问题的结构,可以作为软件开发工作的基础和依据 C.作为确认测试和验收的依据

D.便于开发人员进行需求分析

(9)下列哪个选项是合法的标识符?B

A.123 B._name C.class D.1first (10)下列哪个选项是Java调试器,如果编译器返回程序代码的错误,可以用它对程序进

行调试? C

A.java.exe B.javadoc.exe C.jdb.exe D.javaprof.exe (11)下列关于继承的哪项叙述是正确的? D

A.在java中允许多重继承

B.在java中一个类只能实现一个接口

C.在java中一个类不能同时继承一个类和实现一个接口 D.java的单一继承使代码更可靠

(12)下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问? B

A.private B.无修饰符 C.public D.protected (13)给出下列代码,如何使成员变量m 被方法fun()直接访问? C class Test

{

private int m;

public static void fun()

{

...

}

2

} A.将private int m 改为protected int m B.将private int m 改为

public int m C.将private int m 改为 static int m D.将private int m 改为 int m (14)已知有下列类的说明,则下列哪个语句是正确的?A

public class Test

{

private float f = 1.0f;

int m = 12;

static int n=1;

public static void main(String arg[])

{

Test t = new Test();

}

}

A.t.f; B.this.n; C.Test.m; D.Test.f;

(15)下列代码的执行结果是 A public class Test

{

public int aMethod()

{

static int i=0;

i++;

System.out.println(i);

3

}

public static void main(String args[]) {

Test test = new Test();

test.aMethod();

}

}

A.编译错误 B.0 C.1 D.运行成功,但不输出

(16)下列关于内部类的说法不正确的是C

A.内部类的类名只能在定义它的类或程序段中或在表达式内部匿名使用 B.内部类可以使用它所在类的静态成员变量和实例成员变量 C.内部类不可以用abstract修饰符定义为抽象类

D.内部类可作为其他类的成员,而且可访问它所在类的成员 (17)顺序执行下列程序语句后,则b的值是 C

String a="Hello";

String b=a.substring(0,2);

A.Hello B.hello C.Hel D.null (18)在oneMethod()方法运行正常的情况下,程序段将输出什么? D public void test()

{

try { oneMethod();

System.out.println("condition 1");

} catch (ArrayIndexOutOfBoundsException e)

{

System.out.println("condition 2");

} catch(Exception e)

4 {

System.out.println("condition 3");

} finally

{

System.out.println("finally");

}

}

A.condition 1 B.condition 2 C.condition 3 D.condition 1

finally (19)下列常见的系统定义的异常中,哪个是输入、输出异常? B

A.ClassNotFoundException B.IOException C.FileNotFoundException D.UnknownHostException (20)下列哪个选项是正确计算42度(角度)的余弦值?C A.double d=Math.cos(42);

B.double d=Math.cosine(42);

C.double d=Math.cos(Math.toRadians(42));

D.double d=Math.cos(Math.toDegrees(42));

(21)下列InputStream类中哪个方法可以用于关闭流?B A.skip() B.close() C.mark() D.reset()

(22)下列方法中哪个是执行线程的方法?A

A.run() B.start() C.sleep() D.suspend()

(23)下列关于Frame类的说法不正确的是 C

A.Frame是Window类的直接子类

B.Frame对象显示的效果是一个窗口

C.Frame被默认初始化为可见

D.Frame的默认布局管理器为BorderLayout 5

(24)下列Java常见事件类中哪个是鼠标事件类? C A.InputEvent

B.KeyEvent

C.MouseEvent

D.WindowEvent

(25)在Applet的关键方法中,下列哪个方法是关闭浏览器以释放Applet占用的所有资

源? D

A.init()

B.start()

C.paint()

D.destroy()

(26)下列哪个是面向大型企业级用容器管理专用构件的应用平台? A

A.J2EE

B.J2ME

C.J2SE

D.J2DE

(27)下列哪个选项的java源文件代码片段是不正确的? B

A.package testpackage;

public class Test{ }

B.import java.io.*;

package testpackage;

public class Test{ }

C.import java.io.*; class Person{ }

public class Test{ }

D.import java.io.*;

6

import java.awt.*; public class Test{ }

二、填空题

(1)对象串行化可以很容易地扩展成支持Java对象的 [1],它提供了对象从

流中重建的补充方式。 持续存储或持久存储

(2)Vector类的对象是通过capacity和capacityIncrement两个值来改变集合的容量,其中capacity表示集合最多能容纳的[2] ,capacityIncrement表示每次增加多少容量,不是一个一个增加。元素个数

(3)下列程序的功能是判断某一年是否为闰年.请在横线处填入适当内容,使程序能够正确运行。

import java.io.*; public class LeapYear{

public static void main(String arge[])throws IOException{

InputStreamReader ir;

BufferdeReadwe in;

ir=new InputStreamReader(System.in);

in=new BufferedReader(ir);

System.out.println(“输入年份是:”);

String s= [3] in.readLine()

int year=Integer.parseInt(s);

if year % 4 = = 0 && year % 100! = 0 // year % 400 = =

0)