一.选择题(每道题3分,共45分) (1)Java语言具有许多优点和特点,下列选项中,哪个反映了Java程序并行机制的特点? A、安全性 B、多线性 C、跨平台 D、可移植 (2)Character流与Byte流的区别是 A、每次读入的字节数不同 B、前者带有缓冲,后者没有 C、前者是块读写,后者是字节读写 D、二者没有区别,可以互换使用 (3)监听事件和处理事件 A、都由Listener完成 B、都由相应事件Listener处登记过的构件完成 C、由Listener和构件分别完成 D、由Listener和窗口分别完成 (4)Applet可以做下列哪些操作? A、读取客户端文件 B、在客户端主机上创建新文件 C、在客户端装载程序库 D、读取客户端部分系统变量 (5)下列哪个属于容器的构件? A、JFrame B、JButton C、JPanel D、JApplet (6)以下声明合法的是() A、defaultStrings;B、publicfinalstaticnativeintw( ) C、abstractdoubled;D、abstractfinaldoublehyperbolicCosine( ) (7)关于以下application的说明,正确的是() 1.classStaticStuff 2. { 3. staticintx=10; 4. static{ x+=5;} 5. publicstaticvoidmain(Stringargs[ ]) 6. { 7. System.out.println(“x=” + x); 8. } 9. static{ x/=3;} 10. } A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为:x=5 D、编译通过,执行结果为:x=3 (8)关于以下程序代码的说明正确的是() 1.classHasStatic{ 2.privatestaticintx=100; 3.publicstaticvoidmain(Stringargs[]){ 4.HasStatichs1=newHasStatic(); 5.hs1.x++; 6.HasStatichs2=newHasStatic(); 7.hs2.x++; 8.hs1=newHasStatic( ); 9.hs1.x++; 10. HasStatic.x- -; 11. System.out.println(“x=”+x); 12. } 13. } A、 5行不能通过编译,因为引用了私有静态变量 B、 10行不能通过编译,因为x是私有静态变量 C、程序通过编译,输出结果为:x=103 D、程序通过编译,输出结果为:x=102 (9)以下选项中循环结构合法的是() A、while (inti<7) {i++; System.out.println(“i is “+i); } B、 intj=3; while(j) {System.out.println(“ jis “+j); } C、intj=0; for(intk=0; j + k !=10; j++,k++) {System.out.println(“ jis “+ j + “kis”+ k); } D、 intj=0; do{ System.out.println( “jis “+j++); if (j = = 3) {continueloop;} }while(j<10); (10)类Test1定义如下: 1.publicclassTest1{ 2.publicfloataMethod(float a,floatb){} 3. 4.} 将以下哪种方法插入行3是不合法的。() A、publicfloataMethod(floata, floatb,floatc){} B、publicfloataMethod(floatc,float d){} C、publicintaMethod(inta, int b){} D、private float aMethod(int a,int b,int c){} (11)类Test1、Test2定义如下: 1.public classTest1 2.{ publicfloataMethod(float a,float b) throws 3.IOException {} 4. } 5. publicclassTest2extendsTest1{ 6. 7.} 将以下哪种方法插入行6是不合法的。() A、floataMethod(floata,floatb){ } B、publicintaMethod(int a,int b)throwsException{ } C、publicfloataMethod(floatp,float q){ } D、publicintaMethod(int a,intb)throws IOException{ } (12)关于以下程序段,正确的说法是() 1.Strings1=”abc”+”def”; 2. Strings2=newString(s1); 3. if(s1= =s2) 4. System.out.println(“= = succeeded”); 5. if (s1.equals(s2)) 6. System.out.println(“.equals()succeeded”); A、行4与行6都将执行B、行4执行,行6不执行 C、行6执行,行4不执行C、行4、行6都不执行 (13)以下说法哪项是正确的() 1.classMyListener 2.extendsMouseAdapterimplementsMouseListener{ 3. public void mouseEntered(MouseEventmev) 4. {System.out.println("Mouseentered.");} 5. } A、以上代码可通过编译 B、不能通过编译,因为没有实现MouseListener接口中的所有方法 C、不能通过编译,因为类头定义不能分行 D、能通过编译,若组件用该类作为Mouse的监听者并且接收了mouse-exited事件,则在执行过程中会抛出异常 (14)关于以下程序段的说法,正确的是() 1.classMyListenerimplements 2. ActionListener,ItemListener{ 3. public voidactionPerformed(ActionEventae){ 4. System.out.println("Action");} 5. publicvoiditemStateChanged(ItemEventie){ 6. System.out.println("Item"); 7. } 8.} A、可通过编译 B、第2行产生编译错误 C、第3行产生编译错误 D、第5行产生编译错误 (15)通过调用 newList(10,false)创建一个列表,以下关于该列表的说法哪项是错误的。() A、该列表不支持复选B、该列表有10个选项 C、根据需要该列表可能有垂直滚动条D、该列表支持10个可见选项 二.写出以下程序的运行结果。(每道题10分,共30分) 1.写出以下程序的运行结果。 class OverloadDemo{ voidtestOverload( inti ){ System.out.println(“int”);} voidtestOverload(Strings){ System.out.println(“String”);} publicstaticvoid main(Stringargs[ ]){ OverloadDemo a=newOverloadDemo ( ); charch=’x’; a.testOverload(ch);} } 2.阅读以下程序,写出输出结果。 classFirst{ publicFirst(){ aMethod();} publicvoidaMethod(){ System.out.println(“inFirstclass”);} } publicclassSecondextendsFirst{ publicvoidaMethod(){ System.out.println(“inSecondclass”);} public static void main(String[ ]args){ newSecond( );} } 3.写出以下程序的运行结果。 import java.io.*; public class UseLabel {public static void main(String[] args) {Loop: for(int i=2; i<10;i++) {for(intj=2;j<i;j++) if( i%j == 0)continueLoop; System.out.print(i+" ");} } } 三.编程题(45分) 1.编写一个Java程序要求:开启一个文本文件,一次读取其内的一行文本。令每一行形成一个String,并将读出的String对象置于LinkedList中。请以相反次序印出LinkedList内的所有文本行。----------------------------------------------------------------------------------------------------------------------------------------------------------
一.选择题 1~5
BCBAA6~10 BCDCB11~15 CCAAB 二.程序的运行结果 三.编程题 1. import
java.io.*; import java.util.*; public
class E01_FileIntoList { // Report all exceptions to console: public
static void main(String args[]) throws Exception { LinkedList
lines = new LinkedList(); BufferedReader in = new
BufferedReader( new FileReader("E01_FileIntoList.java")); String
s; while((s = in.readLine())!= null) lines.add(s); in.close(); ListIterator
it = lines.listIterator(lines.size()); while(it.hasPrevious()) System.out.println(it.previous()); } } |