1、17 春南开 16 秋学期Java 语言程序设计在线作业一、单选题(共 30 道试题,共 60 分。 )1. 下列代码中,将引起一个编译错误的行是() 。 1)public class Test 2) int m,n; 3) public Test() 4) public Test(int a)m=a; 5) public static void main(String args) 6) Test t1,t2; 7) int j,k; 8) j=0;k=0; 9) t1=new Test(); 10) t2=new Test(j,k); 11) 12) A. 第 3 行B. 第 5 行C. 第
2、 6 行D. 第 10 行正确答案:2. 一个循环一般应包括哪几部分内容()A. 初始化部分B. 循环体部分C. 迭代部分和终止部分D. 以上都是正确答案:3. 在 Java 中,能实现多重继承效果的方式是()。A. 内部类B. 适配器C. 接口D. 同步正确答案:4. 下列的变量定义中,错误的是( ) 。A. int 6_a;B. float a;C. int i=Integer.MAX_VALUE;D. static int i=100;正确答案:5. 关于以下程序的描述正确的是( ) 。 public class UseArray static int arr = new int5; p
3、ublic static void main(String a) System.out.println(arr0); A. 编译将产生错误B. 编译时正确,但运行时将产生错误C. 正确,输出 0D. 正确,输出?null正确答案:6. 有以下方法的定义,请选择该方法的返回类型( ) 。 ReturnType method(byte x, double y) return (short)x/y*2; A. byteB. shortC. intD. double正确答案:7. 能够支持 javadoc 命令的注释语句是 ()。A. /*./B. /*.*/C. /D. /*.*/正确答案:8. 给
4、出下面代码,关于该程序以下哪个说法是正确的?( ) public class Person static int arr = new int5; public static void main(String a) System.out.println(arr0); A. 编译时将产生错误B. 编译时正确,运行时将产生错误C. 输出零D. 输出空正确答案:9. 下列不属于条件语句关键字的是()A. ifB. elseC. switchD. while正确答案:10. 下列哪个数代表八进制整数?A. 0XA6B. -1E3C. 1840D. 0144正确答案:11. 下列数组 a 中,版本较新的能
5、在程序运行时动态调整大小的是A. int aB. String aC. a=new ArrayList()D. a=new Array()正确答案:12. 编译并且执行以下代码,会出现什么情况? public class Q public static void main(String argv) int anar=new int1,2,3; System.out.println(anar1); A. 1B. 有错误,数组 anar 在初始化以前不能正常输出。C. 2D. 有错误,数组的大小没有定义。正确答案:13. 编译 Java application 源程序文件将产生相应的字节码文件,这
6、些字节文件的扩展名为A. .javaB. .classC. .objD. .exe正确答案:14. 假设 A 类有如下定义: class A int i; static String s; void method1() static void method2() 设 a 是 A 类的一个实例,下列语句调用错误的是A. System.out.println(a.i);B. a.method1();C. A.method1();D. A.method2()正确答案:15. 按照 Java 的标识符命名规范,下列表示一个类的标识符正确的是 ()。A. HelloworldB. HelloWorldC
7、. helloworldD. helloWorld正确答案:16. 下列程序段的输出结果是 void doublearithmaticOperator() System.out.print(9/2); System.out.print(“,“); System.out.println(5/2.0); A. 4.5,2.5B. 4,2C. 4.5,2D. 4,2.5正确答案:17. 下列关于构造方法的说法正确的是A. 因为构造方法名与类名必须相同,所以构造方法的首字母必须大写。B. 构造方法是给对象赋初值,所以没有返回值,要用 void 来声明。C. 构造方法不能被程序调用,也不可以重载。D.
8、一个类只允许有一个构造方法。正确答案:18. 下面可作为 public void aMethod().重载方法的是A. void aMethod().B. public int aMethod().C. public void aMethod ( ).D. public int aMethod(int m).正确答案:19. 以下关于继承的叙述正确的是() 。A. 在 Java 中类只允许单一继承B. 在 Java 中一个类只能实现一个接口C. 在 Java 中一个类不能同时继承一个类和实现一个接口D. 在 Java 中接口只允许单一继承正确答案:20. 在 Java 中,一个类可同时定义许多
9、同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( ) 。A. 隐藏B. 覆盖C. 重载D. Java 不支持此特性正确答案:21. 下列程序段的输出结果是 public class operatorsandExpressions void stringPlus() int x=3,y=4,z=5; System.out.println(x+y+z); A. xyzB. x+y+zC. 12D. 以上均不正确正确答案:22. 下列对继承的说法,哪个是正确的?A. 子类能继承父类的所有方法和状态B. 子类能继承父类的非私有方法和状态C. 子
10、类只能继承父类 public 方法和状态D. 子类只能继承父类的方法,而不继承状态正确答案:23. 给出下面程序段: if(x0)System.out.println(“Hello.“); else if(x-3)System.out.println(“Nice to meet you!“); else System.out.println(“How are you?“); 若打印字符串“How are you? ”,则 x 的取值范围是A. x0B. x-3C. x-3正确答案:24. 下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问?A. privateB. 无修饰符C.
11、 publicD. protected正确答案:25. 以下程序的功能是:求 n!。请在下列程序中填入正确的语句 class FactorialTest static long Factorial(int n) if(n=1) return 1; else _ public static void main(String a) int n=8; System.out.println(n+“!=“+Factorial(n); A. return n*Factorial(n);B. return (n-1)*Factorial(n);C. return n*Factorial(n-1);D. re
12、turn (n-1)*Factorial(n-1);正确答案:26. 下列叙述中,正确的是()。A. Java 语言的标识符是区分大小写的B. 源文件名与 public 类名可以不相同C. 源文件名其扩展名为.jarD. 源文件中 public 类的数目不限正确答案:27. 有程序如下,关于程序的描述哪个是正确的?( ) public class Person static int a = new int10; public static void main(String a) System.out.println(arr1); A. 编译将产生错误B. 编译时正确,但运行时将产生错误C. 正
13、确,输出 0D. 正确,输出?null正确答案:28. 关于以下程序段的说法正确的是 1. public class Myar 2. public static void main(String argv) 3. inti=new int5; 4. System.out.println(i5); 5. 6. A. 第 2 行编译出错B. 第 4 行编译出错C. 编译时产生错误D. 编译时没有产生错误,运行时发生异常正确答案:29. Plant 类派生出子类 Flower ,Flower 类派生出子类 Rose,以下声明错误的是A. Plant p=new Plant ();B. Plant a
14、1 =new Flower();C. Flower f=new Rose ();D. Rose r=new Plant ();正确答案:30. switch 语句不能用于下列哪种数据类型?A. doubleB. byteC. shortD. char正确答案:16 秋学期Java 语言程序设计在线作业 二、判断题(共 20 道试题,共 40 分。 )1. 无论 Java 源程序包含几个类的定义,若该源程序文件以 B.java 命名,编译后生成的都只有一个名为 B.class 的字节码文件。A. 错误B. 正确正确答案:2. 即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函
15、数是无参函数,函数体为空。A. 错误B. 正确正确答案:3. 在不同的软硬件平台上,Java 的各种数据类型所占用的内存长度不同,因此程序的可移植性不强。A. 错误B. 正确正确答案:4. 在 Java 的方法中定义一个常量要用 const 关键字。A. 错误B. 正确正确答案:5. Java 的字符类型采用的是 Unicode 编码,但所占字节由具体软硬件环境决定。A. 错误B. 正确正确答案:6. 无论 Java 源程序包含几个类的定义,若该源程序文件以 A.java 命名,编译后生成的都只有一个名为 A 的字节码文件。A. 错误B. 正确正确答案:7. 构造函数用于创建类的实例对象,构造
16、函数名应与类名相同,返回类型为 void。A. 错误B. 正确正确答案:8. 由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。A. 错误B. 正确正确答案:9. 构造方法是一种特殊的方法,名字与类名一致,但返回类型都为 void 型。A. 错误B. 正确正确答案:10. Java 的类不允许多重继承,但接口支持多重继承。A. 错误B. 正确正确答案:11. Java 有两类程序: Java Application 和 Java Applet,其中 Java Applet 程序由嵌入到浏览器中的解释器解释运行。A. 错误B. 正确正确答案:12. Java 源程序文件应以
17、.java 为后缀名保存,文件内包含几个类的定义就编译生成几个对应的字节码文件。A. 错误B. 正确正确答案:13. Java 有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。A. 错误B. 正确正确答案:14. Java 的源代码中定义几个类,编译结果就生成几个以.class 为后缀的字节码文件。A. 错误B. 正确正确答案:15. 如果 p 是父类 Parent 的对象,而 c 是子类 Child 的对象,则语句 p=c 是正确的A. 错误B. 正确正确答案:16. Java 的各种数据类型所占用的内存长度与具体软硬件环境有关A. 错误B. 正确正确答案:17. 一个线程对象的具体
18、操作是由 run()方法的内容确定的,但是 Thread 类的 run()方法是空的,其中没有内容;所以用户程序要么派生一个 Thread 的子类并在子类里重新定义 run()方法,要么使一个类实现 Runnable 接口并书写其中 run()方法的方法体。A. 错误B. 正确正确答案:18. 在异常处理中,若 try 中的代码可能产生多种异常则可以对应多个 catch 语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。A. 错误B. 正确正确答案:19. 在异常处理中总是将可能产生异常的语句放在 try 块中,用 catch 子句去处理异常,而且一个 try 块之后只能对应一个 catch 语句。A. 错误B. 正确正确答案:20. 若 Java 源程序中包含了几个类的定义,则编译后就生成对应的几个字节码文件。A. 错误B. 正确正确答案: