西南大学培训与继续教育学院课程考试试题卷
课程名称【编号】:(0837)《面向对象程序设计》
考试时间:150分钟
:100分 一、
(本大题共14小题,每道题5.0分,共70.0分)
1.
欲构造ArrayList类的一个实例,此类继承了List接口,下列正确的代码是( )
A.ArrayList myList = new Object( );
B.List myList = new ArrayList( );
C.ArraylList myList = new List( );
D.List myList = new List( );
2.
Test.java的源程序如下。在命令行键入:java Test aaa bb c,回车后的输出结果是( )。
public class Test {
public static void main(String args[]) {
int k1=args.length;
int k2=args[1].length();
System.out.print(k1+" "+k2);
}
}
A.1 2
B.1 3
C.3 2
D.3 3
3.
以下程序编译运行的结果是( )。
public class Test {
public static void main(String[] args) {
float f1[], f2[];
f1 = new float[10];
f2 = f1; //第5行
System.out.println("f2[0] = " + f2[0]); //第6行
}
}
A.f2[0] = 0.0
B.f2[0] = NaN
C.第5行有错误导致编译失败
D.第6行有错误导致编译失败
4.
定义变量boolean b = true;,则String.valueOf(b)的返回值类型是( )。
A.Boolean
B.String
C.false
D.int
5.
while循环和do...while循环的区别是( )。
A.没有区别,这两个结构任何情况下效果一样
B.while循环比do...while循环执行效率高
C.while循环是先循环后判断,所以循环体至少被执行一次
D.do...while循环是先循环后判断,所以循环体至少被执行一次
6.
下列字符序列中可以作为Java语言标识符的是( )
A.true
B.123_xyz
C.x.y
D._x123
7.
下列程序段执行后,变量i和j的值分别为( )。
int i = 1, j = 10;
do {
if (i > j) continue;
j--;
} while(++i < 6);
A.i=6,j=5
B.i=5,j=5
C.i=6,j=4
D.i=5,j=6
8.
若需要定义一个类属性或类方法,应使用哪种修饰符?( )
A.static
B.package
C.private
D.public
9.
定义一个接口,必须使用的关键字是( )。
A.public
B.class
C.interface
D.static
10.
设已声明了一个类A的两个对象a1,a2。为了初始化a1和a2,下列语句正确的是( )。
A.a1,a2 = new A();
B.a1 = A.new(); a2 = A.new();
C.a1 = new(); a2 = new();
D.a1 = new A(); a2 = new A();
11.
下列语句序列给出了k,myArr和myMethod( )的声明。当调用方法myMethod(myArr, k)之后,存储在myArr和k里的值分别是( ) int k = 7;
String myArr[] = {"love", "peace", "and"}; void myMethod(String a[], int m) {
String temp = a[1];
a[1] = a[2];
a[2] = temp;
m = a[2].length();
}
A.{"peace", "love", "and"},4
B.{"peace", "love", "and"},7
C.{"love", "and", "peace"},5
D.{"love", "and", "peace"},7
12.
以下程序编译运行的结果是( )。
abstract class Shape {
abstract void display();
}
class Circle extends Shape {
void display() {
System.out.println("Circle");
}
}
class Rectangle extends Shape {
void display() {
System.out.println("Rectangle");
}
}
class Triangle extends Shape {
void display() {
System.out.println("Triangle");
}
}
public class AbstractClassDemo {
public static void main(String args[]) {
(new Circle()).display();
(new Rectangle()).display();
(new Triangle()).display();
}
}
A.Circle Cirle Cirle
B.Circle Retangle Triangle
C.Retangle Cirle Triangle
D.Triangle Retangle Circle
13.
以下程序编译运行的结果是( )。
public class Test {
public int aMethod() {
static int i = 0;
i++;
return i;
}
public static void main(String args[]) {
Test test = new Test();
test.aMethod();
int j = test.aMethod();
System.out.println(j);
}
}
A.编译将失败
B.编译成功,执行后输出"0"
C.编译成功,执行后输出"1"
D.编译成功,执行后输出"2"
14.
以下程序编译运行的结果是( )。
public class Test {
public static void main(String args[]) {
class Foo {
public int i = 3;
}
Object o = (Object) new Foo(); //第6行
Foo foo = (Foo)o; //第7行
System.out.println(foo.i);
}
}
A.编译失败
B.编译成功且输出"3"
C.编译成功,但第6行抛出异常ClassCastException
D.编译成功,但第7行抛出异常ClassCastException
二、
(本大题共5小题,每道题2.0分,共10.0分)
1.
开发与运行Java程序需要经过的三个主要步骤为编辑源程序、编译生成字节码和解释运行字节码。( )
对
错
2.
在方法定义中,可能发生的异常都必须用try...catch...捕捉。( )
对
错
3.
在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。( )
对
错
4.
在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。( )
对
错
5.
abstract可修饰类、方法。( )
对
错
三、
应用题(本大题共1小题,每道题20.0分,共20.0分)
1.
用Java编写一个Application程序。在窗口中画出三个TextField(前两个用于接收用户输入的两个整数,第三个用于显示相加和),一个加号Label,一个等于号Button。当按下Button时,将相加之和放到第三个TextField中。
版权声明
声明:有的资源均来自网络转载,版权归原作者所有,如有侵犯到您的权益
请联系本站我们将配合处理!