Java练习题一、单选题1. Java程序的执行过程中用到一套JDK工具,其中java.exe是指(B )A. Java文档生成器B. Java解释器C. Java编译器D. Java类分解器2. 编译Java程序的命令文件名是(B )A. java.exeB. javac.exeC. javacD. appletviewer.exe3. 编译Java程序file.java后生成的程序是(C )A. file.htmlB. File.classC. file.classD. file.jar4. Java语言与其他主要语言相比较,独有的特点是(C )A. 面向对象B. 多线程C. 平台无关性D. 可扩展性5. 声明Java独立应用程序main()方法时,正确表达是(A )A. public static void main(String[] args){…}B. private static void main(String args[]){…}C. public void main(String args[]){…}D. public static void main(){…}6. 下列有关Java语言的叙述中,正确的是(B )。
A. Java是不区分大小写的B. 源文件名与public类型的类名必须相同C. 源文件的扩展名为.jarD. 源文件中public类的数目不限7. Java用来定义一个新类时,所使用的关键字为(A )。
A. classB. publicC. structD. class 或struct 8.一个可以独立运行的Java应用程序(D )。
A. 可以有一个或多个main方法B. 最多只能有两个main方法C. 可以有一个或零个main方法D. 只能有一个main方法9. 下面哪个是Java语言中正确的标识符(B )A. 3DB. $thisC. extendsD. implements10. 下面哪个不是Java的保留字或关键字?(B)A. defaultB. NULLC. throwsD. long11. 对if(…)句型括号中的表达式,下列Java类型中哪一个是合法的?(C )A. byteB. shortC. booleanD. Object reference12. Java中整型包括( D )。
A. int,byte,charB. int,short,long,byte,charC. int,short,long,charD. int,short,long,byte13. 哪个是将一个十六进制值赋值给一个long型变量?(D )A. long number = 345L;B. long number = 0345;C. long number = 0345L;D. long number = 0x345L;14. 下面的哪个赋值语句是不对的?(A )A.float f = 11.1; B.double d = 5.3E12;C.double d = 3.14159; D.double d = 3.14D;15. 下列哪个数代表八进制整数?(D )A. 0XA6B. -1E3C. 1840D. 014416. 在Java 中,表示换行符的转义字符是(A )。
A. '\n’B. '\f'C. 'n'D. \dd17. 下列代码真正出错的在那一行: (C )1) public void modify() {2) int I, j, k;3) I = 100;4) while ( I > 0 ) {5) j = I * 2;6) System.out.println (" The value of j is " + j );7) k = k + 1;8) I--;9) }10}A. line 4B. line 6C. line 7D. line 818. 以下代码段执行后的输出结果为( C )。
(符号随被除数)int x=-3; float y=10.0f;System.out.println(y%x);A. 不能成功编译B. -1.0C. 1.0D. -119. 执行完以下代码int [ ] x = new int[10];后,以下哪项说明是正确的( A )A.x[9]为0 B.x[9]未定义C.x[10]为0 D.x[0]为空20. 对数组的定义及初始化不正确的方法是:( B )A.int array[]; B.int array[8];C.int[] array=new int[8]; D.int array[]=new int[8];21. 下面哪条语句定义了5个元素的数组( A )A. int [] a={22,23,24,25,12};B. int a []=new int(5);C. int [5] array;D. int [] arr;22. 定义一维数组名为abc时,下面哪项可以得到数组元素的个数?( B)A.abc.length( )B.abc.lengthC.len(abc)D.ubound(abc)23. 设有定义语句int a[]={66,88,99}; 则以下对此语句的叙述错误的是(C )。
A. 定义了一个名为a的一维数组B. a数组有3个元素C. a数组的下标为1~3D. 数组中的每个元素是整型24. 根据下面给出的代码,判断那个叙述是对的?( C )(p29)public class Person{static int arr[]=new int[10];public static void main(String a[]){System.out.println(arr[1]);}}A.编译时将发生错误B.编译时正确但是运行时出错C.输出为0 D.输出为null25.以下程序执行完后,c与result的值是:(A )boolean a=false;boolean b=true;boolean c=(a&&b)&&(!b);int result=c==false?1:2;A. c: false; result:1;B. c: true; result:2;C. c: true; result:1;D. c: false; result:2;26. 代码“Green eggs”+“Ham”的结果是什么?( C )。
A. Green eggs+HamB. Green eggs HamC. Green eggsHamD. Error27. 下面哪个是对字符串String的正确定义( A )A.String s1=null;B.String s2=’null’ ;C.String s3=(String) ‘abc’ ;D.String s4=(String) ‘\uface’;28. 给出下面一段程序,选择运行结果(C)public class X{public static void main(String [] args){String names[]=new String[5];for(int x=0; x<args.length; x++) names[x]=args[x];System.out.println(names[2]);}}命令行执行:java X a b命令后,其输出结果是下面哪一个?A. namesB. bC. nullD. 运行出现异常29. 哪种方法返回String中的字符数?(B)。
A. size()B. length()C. width()D. girth()30. 下面哪个不是String类的方法?(C )A. subString()B. startsWith()C. toString()D. toUpperCase()31. 关于以下程序段,正确的说法是(C )1. String s1=“a”+“b”;2. String s2=new String(s1);3. if(s1==s2)4. System.out.println(“= =is succeeded”);5. if (s1.equals(s2))6. System.out.println(“.equals() is succeeded”);A. 行4与行6都将执行B. 行4执行,行6不执行C. 行6执行,行4不执行D. 行4行6都不执行32. 下面关于java中类的说法哪个是不正确的?(C )A. 类体中不仅可以有变量定义和成员方法的定义,还可包含静态代码块。
B. 构造方法是类中的特殊方法。
C. 类一定要声明为public的,才可以执行。
D. 一个java文件中可以有多个class定义。
33. 下面关于变量及其范围的陈述哪个是不对的?( B )A.实例变量是类的成员变量B.实例变量用关键字static声明C.在方法中定义的局部变量在该方法被执行时创建D.局部变量在使用前必须被初始化34. 下列类的定义中,错误的是(B )。
A. class x { .... }B. public x extends y { .... }(p66)C. public class x extends y { .... }D. class x extends y implements y1 { .... }35. 下面是程序ObjectText.java的代码段:class Empty{}public class ObjectTest{public static void main(String[] args){Empty em=new Empty();}}以下错误的结论是( A )。
A. 类Empty是空的,既没有成员变量也没有成员方法B. 类Empty非空,有一个默认的构造方法C.类Empty中有一个构造方法Empty()D.类Empty能够被继承36. 下列应用程序打印多少行?( D )public class hellotest{ {System.out.println("hello.");}public static void main(String[] args){new hellotest();new hellotest();new hellotest(); }}A. 0B. 1C. 2D. 337. 假设A类有如下定义,设a是A类的一个实例,下列语句调用哪个是错误的?( C )class A{ int i;static String s;void method1() { }static void method2() { }}A. System.out.println(a.i);B. a.method1();C. A.method1();D. A.method2();38. 看下面一段程序:class Aclass{void go(){ System.out.println("Aclass"); }}public class Bclass extends Aclass{void go(){ System.out.println("Bclass"); }public static void main(String args[]){Aclass a=new Aclass();Aclass a1=new Bclass();a.go();a1.go();}}以上程序运行结果是:(C )A. AclassB. BclassC. AclassD. BclassAclass Bclass Bclass Aclass39. 哪一行定义了一个静态变量?( A )A. public static int i;B.static public int i;C. public int static i;D.int public static i;40. MAX_LENGTH是int型public成员变量,变量值保持为常量100,其定义是( C )。