就业数据资源平台
当前位置:首页 > Java语言程序设计
2014年计算机二级JAVA考试专家预测试卷及答案17

21.已知zipname是一个压缩文件名。则zipname在下列代码中出现的正确位置是(      )。  
ZipInputStream zin= 
new ZipInputStzeam(new FileInputStream(①));  
ZipEntry entry ;  
while((entry=zin.getNextEntry(②))!=null){ 
fileCombo.addltem(entry.getNamc(③));  
zin.closeEntry(④);  

zin.close();  
A.①  
B.②  
C.③  
D.④ 
22.下列代码的执行结果是(      )。  
int numbers[]=new int[6];  
for(int i=1;inumbers[[i]=i-1 ;  
Systern.OUt.print(numbers[I]+"");  
A.0 1 2 3 4 5  
B.1 2 3 4 5 6 
C.0 1 2 3 4  
D.1 2 3 4 5 
23.Java API ee支持线程的类或接口是(      )。  
Ⅰ.java.lang.Thread 
Ⅱ.java.lang.Runnable 
Ⅲ.java.lang.ThreadGroup 
IV.java.io.Serializable 
A.I,Ⅱ B.I,Ⅱ,Ⅲ 
C.I,Ⅱ,IV D.I,Ⅱ,Ⅲ,Ⅳ 
24.下列关于Test类的定义中,正确的是(      )。  
A.class Test implements Runnable{ 
public void run(){} 
Dublic void someMethod[]{} 

B.class Test implements Runnable( 
puIblic void run();  

C.class Test implements Runnable( 
Dublic void someMethod[];  

D.class Test implements Runnable( 
public void someMethod(){} 

25.下列方法被调用后,一定使调用线程改变当前状态的是(      )。  
A.notify()  
B.yield() 
C.sleep() 
D.isAlive() 
26.在堆栈类Sharedstack的定义中,为了保证堆栈在并发操作中数据的正确性,应在下画线处填入的修饰符是(两个下画线的填写内容相同)(      )。  
public class SharedStack{ 
         int idx=0; 
         char[]data=new char[10];  
public synchtonized void push(char c){……} 
publR,synchronized void pop(){……} 

A.Dublic  
B.不使用修饰符  
C.private  
D.protected 
27.关于下列代码编译或执行结果的描述中,正确的是(      )。  
public class Test{ 
public static void main(String argsE]){ 
TcstThread pml=new TestThread("One") 
pml.start();  
TestThread pm2=new TestThread("Tw0") 
pm2.start();  


class TestThread extends Thread( 
private String sTname="";  
TestThread(String s){ 
sTname=s;  

public void run(){ 
for(int i=O;i<2;i++){ 
try{ 
sleep(1000);  
}catch(InterruptedException e){} 
system.out.print(sTname+"");  



A.不能通过编译,TestThread类中不能定义变量和构造方法  
B.输出One One Two Two 
C.输出Two One One Two 
D.选项B或C都有可能出现  
28.下列关于Applet的叙述中,正确的是(      )。  
A.为了使Applet在浏览器中运行,需要在HTML文件中嵌入相应的Applet类 
B.Applet不能从外部接收参数  
C.Applet不能使用javac命令进行编译  
D.Java Application与Applet都必须包含main()方法  
29.下列代码的下画线处应填入的方法名是(      )。  
import java.awt.*;  
import java.applet.*;  
public class Hello extends Applet{ 
public void       (Graphics g){ 
9.drawstring("How are you!",l0,10);  


A.repaint B.println 
C.paint D.show 
30.下列变量的定义中,错误的是(      )。  
A.int X=3;  
B.float f;d;  
C.String s="Hell0"; 
D.boolean b=true;

21.A。【解析】该程序的功能是从zip压缩文件中获取各个文件的名字。因此应该在A处。  
22.C。【解析】该题是简单的for循环考题,通过逐一判断可得到答案,数组的长度是6,数组的内容从下标1开始,最大循环是5,numbers[5]的值是4。  
23.A。【解析】java.lang.Thread类和java.lang.Runnable是创建线程的两个方法,分别是实现Thread类和继承 Runnable接口,而ThreadGroup类是管理一组线程的类。而Serializable是序列化,将一个对象的状态保存起来,在适当的时候再获得,它不支持线程。  
24.A。【解析】java中实现多线程的方法之一就是实现Runnable接口中的run方法,把实现Runnable接口的子类对象传递给Thread类的构造函数。  
25.C。【解析】线程调用sleep函数后,使当前线程进入停滞状态。yield函数可使线程进入可执行状态,排程器从可执行状态的线程中重新排程,调用了yield函数的线程有可能被马上执行,也有可能不会马上执行。notify函数从线程等待池中移走任意一个线程,并把它放到锁标志等待池中,其状态仍旧是等待。所以只有sleep一定会改变线程状态。  
26.C。【解析】堆栈中为了保证访问数据的一致性,应该对类的数据进行封装,而实现类数据封装的级别是private。  
27.D。【解析】启动两个线程,线程之间没有进行同步,所以B和C均有可能。  
28.A。【解析】applet程序必须在浏览器中运行,因此它需要支持applet类,而applet程序可以接受外部参数,可以使用javac编译,但是可以不用包含main函数。  
29.C。【解析】这里使用一个继承自Applet的类来显示字符。主要方法是在paint()方法中使用System.out.println()显示。  
30.B。【解析】正确的方法是float f,d;,中间应该使用“,”而不是“;”,因为在Java中“;”表示一个语句结束。  
就业数据资源平台