1、学年第一学期JAVA期末练习题及参考答案2009-2010学年第一学期JAVA期末练习题及参考答案一、 选择题 1、在编写实现文件读写功能的Java程序时,需要在程序的开头写上语句( )。Aimport java.applet.* ; Bimport java.awt.* ;Cimport java.io.* ; Dimport java.awt.event.* ;2、main方法是Java应用程序执行的入口点,以下哪项是main方法头?( )Apublic static int main(String arg) Bpublic static void main(String arg)Cpub
2、lic static void main(String args) Dpublic static void main()3、Java 应用程序中的主类需包含main方法,main方法的返回类型是什么?( )A、int B、float C、double D、void4、以下哪个不是Java的关键字?( )Ado Btry Cfinal DWhile5、以下哪个不是Java的关键字?( )Atry Bcatch Cboolean Duntil6、以下哪项标识符是不合法的。( )AString B$1 Cx D3_a7、以下哪个修饰符可用于定义成员常量?( )Afinal Bstatic Cabst
3、ract Dconst8、以下关于构造函数的描述正确的是( )。A构造函数是特殊的方法,返回类型只能为voidB可以定义多个构造函数,但每个方法名需各不相同C在类定义中必须定义构造函数,而且只能定义一个构造函数D构造方法与类同名,在创建新对象时系统会自动调用构造函数9、以下关于构造函数的描述错误的是( )。A、构造函数的返回类型只能是void型。B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。C、构造函数的主要作用是完成对类的对象的初始化工作。D、一般在创建新对象时,系统会自动调用构造函数。10、关于类的继承以下说法错误的是( )。 A在java中类只允许单一继承 B在java中一个
4、类可实现多个接口C在java中一个类可以同时继承一个类和实现一个接口Djava允许多重继承11、设有下面两个类的定义: class Person class Student extends Person long id; / 身份证号 int score; / 入学总分 String name; / 姓名 int getScore()return score; 则类Person和类Student的关系是( )。A、包含关系 B、继承关系 C、关联关系 D、上述类定义有语法错误12、关于修饰符static以下叙述错误的是( )。Astatic方法不可被覆盖Bstatic可以用来修饰类 Cstat
5、ic方法不可以直接访问非静态的方法,否则编译出错Dstatic方法只能访问类变量或方法参数,不可直接访问成员变量13、关于Java的修饰符,以下说法错误的是( )。A抽象类中的方法不一定都是抽象方法Bfinal类中的属性和方法都必须被final修饰符修饰C类及其属性、方法可以同时有一个以上的修饰符来修饰D要使类中某个成员变量只能被它自身访问到,该变量只能用private修饰14、给出如下代码:classTest /定义成员a publicstaticvoidfun() /somecode. 要在函数fun()中直接访问a,以下成员变量a定义正确的是( )。Apublicinta; Bstati
6、cinta; Cinta; D protectedinta;15、容器Frame使用的缺省布局编辑策略是( )。AFlowLayout BBorderLayout CGridLayout DCardLayout16、以下声明合法的是( )A、default String s; B、public final static native int w( )C、abstract double d;D、abstract final int hyperbolicCosine( )17、以下程序段执行后将有( )个字节被写入到文件afile中。 try FileOutputStream fos=new Fi
7、leOutputStream(“afile.txt”); DataOutputStream dos=new DataOutputStream(fos); dos.writeInt(3); dos.writeDouble(0.01); dos.close(); fos.close( ); catch(IOException e) A、2 B、8 C、12 D、1618、编译并运行以下程序,以下描述哪个选项是正确的( )。class ATestOftoString protected String toString() return super.toString(); A、编译通过运行无异常 B、
8、编译通过但运行时出错C、行2出错,不能成功编译 D、不能成功编译,行3出错19、有以下程序片段,下列哪个选项不能插入到行1。( )1.2.public class A3./do sth 4. A、public class MainClass B、package mine; C、class ANotherClass D、import java.util.*;20、在使用interface声明一个接口时,只可以使用( )修饰符修饰该接口。A、private B、protected C、private protected D、public21、以下哪个不是Java的关键字?( )A、FALSE B、
9、const C、this D、void22、关于以下application的说明,正确的是( )。1 class StaticStuff2 3 static int x;4 static x+=5;5 public static void main(String args )6 7 System.out.println(“x=” + x);8 9 static x/=5;10A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器C、编译通过,执行结果为:x=1D、能通过编译,但程序运行结果不可预知,因为变量x没有初始化23、有程序如下,关于程序的
10、描述哪个是正确的?()public class Person static int arr = new int5;public static void main(String a) System.out.println(arr0); A、编译将产生错误 B、编译时正确,但运行时将产生错误 C、正确,输出0 D、正确,输出null24、类ABC定义如下:1public class ABC2 public int max( int a, int b) 3 4 将以下哪个方法插入行3是不合法的。( )A、public float max(float a, float b, float c) B、pu
11、blic int max (int c, int d) C、public float max(float a, float b) D、private int max(int a, int b, int c) 25、有语句String s=”hello world”; ,以下操作哪个是不合法的?( )A、s=1; B、int i=s.length();C、String ts=s.trim(); D、String t=s+”!”;26、有程序片段如下,以下哪个表示式的结果为true?( )Float s=new Float(0.1f);Float t=new Float(0.1f);Double
12、u=new Double(0.1);A、s=t B、s.equals(t) C、u.equals(s) D、t.equals(u)27、Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( )个比特位。A、8 B、16 C、32 D、6428、以下哪项可能包含菜单条( )。A、Panel B、Frame C、Applet D、Dialog29、paint()方法使用哪种类型的参数? () A、Graphics B、Graphics2D C、String D、Color30、以下哪个方法用于定义线程的执行体?( )A、start() B、init() C、run() D、
13、synchronized()31、下面哪个不是Java中的容器? ( )A、Canvas B、ScrollPane C、Applet D、Dialog32、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。A、隐藏 B、覆盖 C、重载 D、Java不支持此特性33、以下自定义标识符中哪项是不合法的( )A、const B、$double C、hello D、BigMeaninglessName34、类Test1、Test2定义如下:1 public class Test12 public float
14、 aMethod(float a,float b) throws3 IOException 4 5 public class Test2 extends Test16 7 将以下哪种方法插入行4是不合法的。( )A、 float aMethod(float a,float b) B、 public int aMethod(int a,int b)throws Exception C、 public float aMethod(float p,float q) D、 public int aMethod(int a,int b)throws IOException 35、以下哪个接口的定义是正确
15、的?( )A、 interface B void print() ;B、 abstract interface B void print() ;C、 abstract interface B extends A1,A2 /A1、A2为已定义的接口 abstract void print() ;D、 interface B void print();36、下面哪个函数是publicvoid aMethod().的重载函数?( )A、void aMethod().B、publicint aMethod().C、publicvoid aMethod ( ).D、publicint aMethod(i
16、ntm).37、A派生出子类B,B派生出子类C,并且在Java源代码中有如下声明: 1. A a0=new A();2. A a1 =new B();3. A a2=new C();问以下哪个说法是正确的?( )A、只有第1行能通过编译 B、第1、2行能通过编译,但第3行编译出错C、第1、2、3行能通过编译,但第2、3行运行时出错D、第1行、第2行和第3行的声明都是正确的38、假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( )class A int i; static String s; void method1() static void method2() A、Sy
17、stem.out.println(a.i);B、a.method1(); C、A.method1(); D、A.method2()39、下列哪些语句关于Java内存回收的说明是正确的? ( )A、程序员必须创建一个线程来释放内存B、内存回收程序负责释放无用内存C、内存回收程序允许程序员直接释放内存D、内存回收程序可以在指定的时间释放内存对象40、关于垃圾收集机制的叙述正确的是( )。A垃圾收集将检查并释放不再使用的内存B程序开发者必须自己创建一个线程进行内存释放的工作C垃圾收集允许程序开发者明确指定并立即释放该内存 D垃圾收集能够在期望的时间释放被java对象使用的内存41、将以下哪个方法的定
18、义插入第6行后,会引发编译错误?( )1 class Super 2 public void a() 3 4 5 public class Sub extends Super 6 7 Afloat a()return 1; Bpublic void a(int x) Cpublic void a(float f) Dpublic float a(int x)return (float)x;42、以下方法的返回类型是( )。 ReturnType function( int x , double y ) return x+y/2; Abyte Bshort Cfloat Ddouble43、以下
19、接口定义正确的是( )。Ainterface ATest void t() ;Bpublic interface ATest void t();Cabstract interface ATest void t() ;Dabstract interface ATest extends ATest 1, ATest 2 / ATest1,ATest 2为已定义的接口 abstract void t() ;44、可以用来为对象加互斥锁的关键字是( )。Atransient Bserialize Cstatic D synchronized45、关于异常处理,以下说法错误的是( )。A可以使用thro
20、w语句抛出异常B程序可以使用try、catch、finally语句捕获异常 C无论try块中是否发生异常,finally标识的代码块都会被执行 Dtry语句后只能有一个catch语句46、有如下代码段: 12 if(f1()/do something 3 else if(f2()/do the other 4 其中,方法f1() 将抛出IOException, 以下可以填入第1行的是( )。Apublic IOException function () Bpublic void function() IOExceptionCpublic void function() throws IOExc
21、eption Dpublic void function() throw IOException47、给出如下代码: public class Example public static void main(String args) static int b = new b8; System.out.println(b8); 以下哪个说法是正确的?( )A有错,不能通过编译B编译通过,但运行时有错C输出0D输出nullCCDDD DADAD BBBBB BCCAD ACCBA BBBAC ACAAD DDCBA ADBDD CA三、程序阅读 1、写出以下程序的运行结果。public class
22、 Test_2 public static void main(String args) System.out.println( fun(3, 4, 5) ); static int fun(int x, int y, int z) return fun( x, fun(y,z) ); static int fun(int x,int y) return x*y; 602、写出以下程序的运行结果。class OverloadDemo void testOverload( int i ) System.out.println(integer); void testOverload(String
23、s) System.out.println(String); public static void main(String args ) OverloadDemo a=new OverloadDemo ( ); char ch=k; a.testOverload(ch); integer3、写出以下程序的运行结果。class StaticStuff static int x;static x+=7; public static void main(String args ) System.out.println(x= + x); static x%=4;x=3、写出以下程序的运行结果。 pub
24、lic class Test_3 static int x; public Test_3( ) x+; public static void main(String args) Test_3 s1=new Test_3(); System.out.print (s1.x+,); s1=new Test_3(); System.out.println(s1.x+,); s1=new Test_3(); System.out.println(s1.x); static x=1; 2, 3, 45、写出以下程序的运行结果。public class Test_3 public static void
25、main(String args) System.out.println( doSth(1, 2, 3) ); static int doSth(int x, int y, int z) return doSth( x, doSth(y,z) ); static int doSth(int x,int y) return xy?x:y; 36、阅读以下程序,输出结果为 1.23 。class Q1 public static void main(String args ) double d=1.23; Dec dec=new Dec( ); dec.decrement(d); System.o
26、ut.println(d); classs Dec public void decrement(double decMe) decMe = decMe 0.1; 7、写出以下程序的功能。复制文件a.txt到文件b.txtimport java.io.*;public class C public static void main(String args) throws IOException File inputFile = new File(“a.txt); File outputFile = new File(“b.txt); FileReader in = new FileReader(
27、inputFile); FileWriter out = new FileWriter(outputFile); int c; while (c = in.read() ) != -1) out.write(c); in.close(); out.close(); 8、写出以下程序的功能。在屏幕上输出Test.java文件的内容import java.io.*;class Test_4 public static void main(String args) throws IOException int b; FileInputStream fileIn=new FileInputStream
28、(Test.java); while(b=fileIn.read()!=-1) System.out.print(char)b); 9、以下程序段的输出结果为 1 2 3 4 5 8 9 。public class C public static void main(String args ) int i , j ; int a = 2,1,4,8,9,5,3; for ( i = 0 ; i a.length-1; i + ) int k = i; for ( j = i ; j a.length ; j+ ) if ( ajak ) k = j; int temp =ai; ai = ak; ak = temp; for ( i =0 ; ia.length; i+ ) System.out.print(ai+ ); System.out.println( ); 10、写出
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1