2010年9月计算机二级JAVA笔试试题及答案
一、选择题(每小题2分,共70分)
下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的。请将正确选项填涂在答题卡相应位置上,答在试卷上不得分。
(1)下列叙述中正确的是
A)线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的
B)线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构
C)线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构
D)上述三种说法都不对
(2)下列叙述中正确的是
A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化
B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化
C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化
D)上述三种说法都不对
(3)软件测试的目的是
A)评估软件可靠性 B)发现并改正程序中的错误
C)改正程序中的错误 D)发现程序中的错误
(4)下面描述中,不属于软件危机表现的是
A)软件过程不规范 B)软件开发生产率低
C)软件质量难以控制 D)软件成本不断提高
(5)软件生命周期是指
A)软件产品从提出、实现、使用维护到停止使用退役的过程
B)软件从需求分析、设计、实现到测试完成的过程
C)软件的开发过程
D)软件的运行维护过程
(6)面向对象方法中,继承是指
A)一组对象所具有的相似性质
B)一个对象具有另一个对象的性质
C)各对象之间的共同性质
D)类之间共享属性和操作的机制
(7)层次型、网状型和关系型数据库划分原则是
A)记录长度
B)文件的大小
C)联系的复杂程度
D)数据之间的联系方式
(8)一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员、与实体计算机之间的联系是
A)一对一
B)一对多
C)多对多
D)多对一
(9)数据库设计中反映用户对数据要求的模式是
A)内模式
B)概念模式
C)外模式
D)设计模式
(10)有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是
A)自然连接
B)交
C)投影
D)并
(11)下列特点中不属于Java的是
A)多线程
B)多继承
C)跨平台
D)动态性
(12)Java的反汇编命令是
A)javap
B)javac
C)jdb
D)java
(13)下列变量定义中,不合法的是
A)Int $X;
B)int _123;
C)int Summer_2010_gross_saIe;
D)Int #dim;
(14)下列选项中为单精度数的是
A)2
B)5.2
C)0.2f
D)023
(15)下列关于boolean类型的叙述中,正确的是
A)可以将boolean类型的数值转换为int类型的数值
B)可以将boolean类型的数值转换为字符串
C)可以将boolean类型的数值转换为char类型的数值
D)不能将boolean类型的数值转换为其他基本数据类型
(16)若定义int a=2,b=2,下列表达式中值不为4的是
A)a*(++b)
B)a*(b++)
C)a+b
D)a*b
(17)下列可以获得构件前景色的方法是
A)getSize()
B)getForeground()
C)getBackground()
D)paint()
(18)下列程序的运行结果是
public class test{
private String[] data={“10”,“10.5”};
public void fun(){
double s=0;
for(int i=0;i<3;i++){
try{
s=s+Integer .parseInt(data[i]);
}catch(Exception e){
System.out.print(“errorl:”+data[i]);
}
}
}
public static void main(String[]args){
try{
testd=new test();
d .fun();
}catch(Exception e){
System.out.printIn(“error2”);
}
}
}
A)errorl:10.5
B)error2
C)errorl:10.5 error2
D)以上都不对
(19)下列程序片段中,能通过编译的是
A)public abstract class Animal{
public void speak();}
B)public abstract class Animal{
public void speak(){}}
C)public class Animal{
public abstract void speak();}
D)public abstract class Animal{
public abstract void speak(){}}
(20)下列不属于接口WindowListener的方法是
A)windowClosing()
B)windowClosed()
C)windowMinimized()
D)windowopened()
(21)下列选项中,不能输出100个整数的是
A)for(int i=0;i<100;i++)
System.out.println(i);
B)int i=0;
do{
System.out.println(i);
i++;
}while(i<100);
C)int i=0;
while(i<100){
System.out.printIn(i);
i++;
}
D)inti=0;
while(i<100){
i++;
if(i<100)continue;
System .out.printIn(i);
}
(22)类变量必须带有的修饰符是
A)static
B)final
C)public
D)Volatile
(23)下列选项中属于字符串常量的是
A)‘abc’
B)“abc”
C)[abc]
D)(abc)
(24)Java程序默认引用的包是
A)java.text包
B)java.awt包
C)java.lang包
D)java .util包
(25)为使下列代码正常运行,应该在下划线处填入的选项是
ObjectInputStream in=
new_____(new FileInputStream(“employee . dat”));
Employee[]newStaff=(Employee[〕)in.readObject();
in .cIose();
A)Reader
B)InputStream
C)ObjectInput
D)ObjectInputStream
(26)下列代码将对象写入的设备是
ByteArrayOutputStreambout=new ByteArrayOutputStream();
ObjectOutputStream out=new ObjectoutputStream(bout);
out.writeObject(this);
out .close();
A)内存
B)硬盘
C)屏幕
D)网络
(27)为使下列代码正常运行,应该在下划线处填入的选项是
int〔〕numbers=new int[n];
for(Int i=0;i <numbers.____;i++)
numbers「i〕=i+1;
A)size
B)length
C)dimension
D)measurement
(28)为使下列代码正常运行,应该在下划线处填入的选项是
abstract class Person{
public Person(String n)!
name=n;
}
public____String getDescription();
public String getName(){
return name;
}
private String name;
}
A)static
B)private
C)abstract
D)final
(29)下列能够正确创建线程的方法是
I.继承java.lang.Thread类,并重写run()方法
II.继承java.lang.Runnable类,并重写start()方法
III.实现java.lang.Thread接口,并实现run()方法
IV.实现java.lang.Runnable接口,并实现run()方法
A)I,III
B)II,IV
C)II,III
D)I,IV
(30)下列线程状态转换序列,在线程实际运行中可能出现的序列是
A)新建→运行→阻塞→终止
B)……运行→阻塞→可运行→终止
C)……可运行→运行→阻塞→运行……
D)新建→可运行→运行→阻塞→可运行……
(31)为了支持压栈线程与弹栈线程之间的交互与同步,应在下划线处填入的选项是
pubIis class StackTest{
private int idx=0;
private int[]data=new int[8];
public void push(int i){
synchronized(this){
______;
data[idx]=i;
idx++;
}
}
……
}
A)this.notify()
B)interrupt()
C)this .wait()
D)sleep()
(32)对下列程序的叙述中,正确的是
1:public class X extends Thread implements Runnable{
2:publ主c void run(){
3: System.out.println(“this is run()”);
4:}
5:public static void main(String args〔〕){
6:Threadt二new Thread(new X());
7:t.start();
8:}
9:}
A)第1行会产生编译错误
B)第6行会产生编译错误
C)第6行会产生运行错误
D)程序正常运行
(33)下列关于Applet的叙述中,正确的是
A)Applet不仅可以嵌入到浏览器中运行,还可以独立运行
B)Applet的主类要定义为Applet类或JApplet类的子类
C)同一个页面中的Applet之间不能通信
D)Applet不支持多线程
(34)当一个Applet所在的Web页面被其他页面覆盖后,不可能被调用的Applet方法是
A)destroy()
B)init()
C)stop()
D)start()
(35)要向Applet传递参数,应该在下列drawing.html文件的下划线处填入的选项是
……
……
A)<param image,“flower.gif”>
B)<param image value= flower .gif>
C)<param name= image value=“flower .gif”>
D)<param name=“image”value=“flower.gif”>
二、填空题(每空2分,共30分)
(1)一个栈的初始状态为空。首先将元素5,4,3,2,1依次入栈,然后退栈一次,再将元素A,B,C,D依次入栈,之后将所有元素全部退栈,则所有元素退栈(包括中间退栈的元素)的顺序为【1】。
(2)在长度为n的线性表中,寻找最大项至少需要比较【2】次。
(3)一棵二叉树有10个度为1的结点,7个度为2的结点,则该二义树共有【3】个结点。
(4)仅由顺序、选择(分支)和重复(循环)结构构成的程序是【4】程序。
(5)数据库设计的四个阶段是:需求分析,概念设计,逻辑设计和【5】。
(6)JVM指的是Java【6】。
(7)Java中的字符变量在内存中占【7】位(bit)。
(8)Java语言对简单数据类型进行了类包装,int对
应的包装类是【8】。
(9)继承性是面向对象方法的一个基本特征,它使代码可【9】
(10)抽象类中含有没有实现的方法,该类不能【10】。
(11)在Java的输入输出流中,数据从数据源流向数据目的地,流的传送是【11】行的。
(12)Swing中用来表示进程条的类是:javax.swing. 【12】。
(13)下列程序创建了一个线程并运行,请在下划线处填入正确代码。
public class Try extends Thread{
public static void main(String args[]){
Threadt=new Try();
【13】;
}
public void run(){
System.out.println(“Try!”);
}
}
(14)Java中线程的【14】是由Java .lang.Thread类的run()方法定义的。
(15)请在下划线处填入代码,使程序能够正确运行。
import java .awt.*;
import java .applet.*;
public class SayHi extends Applet{
public void【15】(Graphics g){
g .drawString(“Hi!”20,20);
}
}
一、选择题
01-05 B A B D D 06-10 D D A B C 11-15 B C DA D 16-20 C D B C A 21-25 A A C C D 26-30 B D C B A 31-35 C C D A B
二、填空题1、63 2、黑河 3、BDSM 4、开发 5、DD 6、J2ME 7、换行8、passed 9、3and3 10、方法 11、Error 12、Writer 13、transien 14、操作 15、java.applet