Java语言程序设计2016秋南开本部满分答案
16秋学期《Java语言程序设计》在线作业一、单选题:
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) } (满分:2)
A. 第3行
B. 第5行
C. 第6行
D. 第10行
2.一个循环一般应包括哪几部分内容( ) (满分:2)
A. 初始化部分
B. 循环体部分
C. 迭代部分和终止部分
D. 以上都是
3.在 Java 中,能实现多重继承效果的方式是( )。 (满分:2)
A. 内部类
B. 适配器
C. 接口
D. 同步
4.下列的变量定义中,错误的是( )。 (满分:2)
A. int 6a;
B. float a;
C. int i=Integer.MAXVALUE;
D. static int i=100;
5.关于以下程序的描述正确的是( )。public classUseArray{ static int arr[] = new int; public static void main(String a[]) { System.out.println(arr); } } (满分:2)
A. 编译将产生错误
B. 编译时正确,但运行时将产生错误
C. 正确,输出0
D. 正确,输出?null
6.有以下方法的定义,请选择该方法的返回类型( )。 ReturnTypemethod(byte x, double y) {return (short)x/y*2; } (满分:2)
A. byte
B. short
C. int
D. double
7.能够支持 javadoc 命令的注释语句是( )。 (满分:2)
A. /**...//
B. /*...*/
C. //
D. /**...*/
8.给出下面代码,关于该程序以下哪个说法是正确的?( )public class Person{ static int arr[] = new int;public static void main(String a[]) { System.out.println(arr); }} (满分:2)
A. 编译时将产生错误
B. 编译时正确,运行时将产生错误
C. 输出零
D. 输出空
9.下列不属于条件语句关键字的是( ) (满分:2)
A. if
B. else
C. switch
D. while
10.下列哪个数代表八进制整数? (满分:2)
A. 0XA6
B. -1E3
C. 1840
D. 0144
11.下列数组 a 中,版本较新的能在程序运行时动态调整大小的是 (满分:2)
A. int a[]
B. String[] a
C. a=new ArrayList( )
D. a=new Array( )
12.编译并且执行以下代码,会出现什么情况? public class Q{ public static void main(String argv[]){ int anar[]=new int[]{1,2,3}; System.out.println(anar); } } (满分:2)
A. 1
B. 有错误,数组anar在初始化以前不能正常输出。
C. 2
D. 有错误,数组的大小没有定义。
13.编译Java application源程序文件将产生相应的字节码文件,这些字节文件的扩展名为 (满分:2)
A. .java
B. .class
C. .obj
D. .exe
14.假设A类有如下定义: classA{ inti;staticStrings;voidmethod1( ) { }staticvoidmethod2( ){ }}设a是A类的一个实例,下列语句调用错误的是 (满分:2)
A. System.out.println(a.i);
B. a.method1( );
C. A.method1( );
D. A.method2( )
15.按照 Java 的标识符命名规范,下列表示一个类的标识符正确的是( )。 (满分:2)
A. Helloworld
B. HelloWorld
C. helloworld
D. helloWorld
16.下列程序段的输出结果是 void doublearithmaticOperator( ){ System.out.print(9/2); System.out.print(","); System.out.println(5/2.0); } (满分:2)
A. 4.5
2.5
B. 4
2
C. 4.5
2
D. 4
2.5
17.下列关于构造方法的说法正确的是 (满分:2)
A. 因为构造方法名与类名必须相同,所以构造方法的首字母必须大写。
B. 构造方法是给对象赋初值,所以没有返回值,要用void来声明。
C. 构造方法不能被程序调用,也不可以重载。
D. 一个类只允许有一个构造方法。
18.下面可作为public?void? aMethod( ){...}重载方法的是 (满分:2)
A. void aMethod( ){...}
B. public int aMethod( ){...}
C. public void aMethod( ){...}
D. public int aMethod(int m){...}
19.以下关于继承的叙述正确的是( )。 (满分:2)
A. 在Java中类只允许单一继承
B. 在Java中一个类只能实现一个接口
C. 在Java中一个类不能同时继承一个类和实现一个接口
D. 在Java中接口只允许单一继承
20.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )。 (满分:2)
A. 隐藏
B. 覆盖
C. 重载
D. Java不支持此特性
21.下列程序段的输出结果是 public class operatorsandExpressions{ void stringPlus( ){ int x=3,y=4,z=5; System.out.println(x+y+z); } } (满分:2)
A. xyz
B. x+y+z
C. 12
D. 以上均不正确
22.下列对继承的说法,哪个是正确的? (满分:2)
A. 子类能继承父类的所有方法和状态
B. 子类能继承父类的非私有方法和状态
C. 子类只能继承父类public方法和状态
D. 子类只能继承父类的方法,而不继承状态
23.给出下面程序段: if(x>0){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的取值范围是 (满分:2)
A. x>0
B. x>-3
C. x<=-3
D. x<=0&x>-3
24.下列哪个修饰符可以使在一个类中定义的成员变量只能被同一包中的类访问? (满分:2)
A. private
B. 无修饰符
C. public
D. 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));} } (满分:2)
A. return n*Factorial(n);
B. return(n-1)*Factorial(n);
C. return n*Factorial(n-1);
D. return(n-1)*Factorial(n-1);
26.下列叙述中,正确的是( )。 (满分:2)
A. Java语言的标识符是区分大小写的
B. 源文件名与public类名可以不相同
C. 源文件名其扩展名为.jar
D. 源文件中public类的数目不限
27.有程序如下,关于程序的描述哪个是正确的?( )public class Person{ static int a[] = new int; public static void main(String a[]) { System.out.println(arr); } } (满分:2)
A. 编译将产生错误
B. 编译时正确,但运行时将产生错误
C. 正确,输出0
D. 正确,输出?null
28.关于以下程序段的说法正确的是 1. public class Myar{ 2. public static void main(String argv[]){ 3. int[]i=new int; 4. System.out.println(i); 5. } 6. } (满分:2)
A. 第2行编译出错
B. 第4行编译出错
C. 编译时产生错误
D. 编译时没有产生错误,运行时发生异常
29.Plant类派生出子类Flower ,Flower类派生出子类Rose,以下声明错误的是 (满分:2)
A. Plantp=new Plant( );
B. Planta1 =newFlower( );
C. Flowerf=newRose( );
D. Roser=newPlant( );
30.switch 语句不能用于下列哪种数据类型? (满分:2)
A. double
B. byte
C. short
D. char
三、判断题:
1.无论Java源程序包含几个类的定义,若该源程序文件以B.java命名,编译后生成的都只有一个名为B.class的字节码文件。 (满分:2)
A. 错误
B. 正确
2.即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参函数,函数体为空。 (满分:2)
A. 错误
B. 正确
3.在不同的软硬件平台上,Java的各种数据类型所占用的内存长度不同,因此程序的可移植性不强。 (满分:2)
A. 错误
B. 正确
4.在Java的方法中定义一个常量要用const关键字。 (满分:2)
A. 错误
B. 正确
5.Java的字符类型采用的是Unicode编码,但所占字节由具体软硬件环境决定。 (满分:2)
A. 错误
B. 正确
6.无论Java源程序包含几个类的定义,若该源程序文件以A.java命名,编译后生成的都只有一个名为A的字节码文件。 (满分:2)
A. 错误
B. 正确
7.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。 (满分:2)
A. 错误
B. 正确
8.由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。 (满分:2)
A. 错误
B. 正确
9.构造方法是一种特殊的方法,名字与类名一致,但返回类型都为void型。 (满分:2)
A. 错误
B. 正确
10.Java的类不允许多重继承,但接口支持多重继承。 (满分:2)
A. 错误
B. 正确
11.Java有两类程序:Java Application和Java Applet,其中Java Applet程序由嵌入到浏览器中的解释器解释运行。 (满分:2)
A. 错误
B. 正确
12.Java源程序文件应以.java为后缀名保存,文件内包含几个类的定义就编译生成几个对应的字节码文件。 (满分:2)
A. 错误
B. 正确
13.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。 (满分:2)
A. 错误
B. 正确
14.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。 (满分:2)
A. 错误
B. 正确
15.如果p是父类Parent的对象,而c是子类Child的对象,则语句p=c是正确的 (满分:2)
A. 错误
B. 正确
16.Java的各种数据类型所占用的内存长度与具体软硬件环境有关 (满分:2)
A. 错误
B. 正确
17.一个线程对象的具体操作是由run( )方法的内容确定的,但是Thread类的run( )方法是空的,其中没有内容;所以用户程序要么派生一个Thread的子类并在子类里重新定义run( )方法,要么使一个类实现Runnable接口并书写其中run( )方法的方法体。 (满分:2)
A. 错误
B. 正确
18.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。 (满分:2)
A. 错误
B. 正确
19.在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。 (满分:2)
A. 错误
B. 正确
20.若Java源程序中包含了几个类的定义,则编译后就生成对应的几个字节码文件。 (满分:2)
A. 错误
B. 正确
**** Hidden Message *****
页:
[1]