一、配对题(每小题1分,共10分)
在右栏中找出与左栏中的术语最相匹配的解释,并将该解释前的字母填写在相应术语前面的括号内:
()1. == A.一种Java程序,可以在Web浏览器中运行
()2. = B.用于类声明中,指出新类派生于哪个类
()3. % C. 赋值运算符
()4. java D. 在方法体中定义
()5. javac E.相等运算符
()6. applet F.在类的定义体中定义,但位于类的方法体之外
()7. application G. 编译Java程序
()8. extends H.求模运算符
()9.实例变量I.执行Java程序
()10.局部变量J.由Java解释器执行的程序
二、判断题(每小题1分,共10分)
1.一个Java程序中至少要包含一个类的定义。
()
2.注释的作用是使程序在执行时在屏幕上显示//符号之后的内容。
()
3.声明变量时必须指定一个类型。
()
4.如果在类定义中没有给出构造函数,则该类没有构造函数。
()
5.final类中的变量和方法都必须用final修饰符修饰。
()
6.超类代表的对象范围比子类广。
()
7.Java提供称为多重继承的功能。
()
8.drawOval(x, y, 50, 100)的前两个参数指定了椭圆的中心坐标。
()
9.在Java坐标系中,x的值从左到右增长。
()
10.单个的数组元素被传递给一个方法,并在方法中被修改,在被调用方法完成执行之后,该
元素的值将改为修改后的值。
()
三、单选题(每小题2分,共20分)
A1.Java语言是由_______公司开发的。
(A) Sun Microsystems (B) Microsoft (C) Oracle (D) IBM (E) Cisco Systems
C 2. JDK命令________用于编译Test.java文件中的类。
(A) java Test (B) java Test.java (C) javac Test.java (D) javac Test
C 3. Java字节码文件的扩展名是________。
(A) .java (B) .obj (C) .class (D) .exe
B 4. 45 / 4的结果是________。
(A) 10 (B) 11 (C) 11.25 (D) 12
D 5.下面表达式中________的结果是数值1。
(A) 2 % 1 (B) 15 % 4 (C) 25 % 5 (D) 37 % 6
A 6. 下面的代码打印"Welcome to Java" ________次。
int count = 0;
while (++count < 9)
System.out.println("Welcome to Java");
(A) 8 (B) 9 (C) 10 (D) 11 (E) 0
E 7. 执行下面的程序段以后,y的输出是________。
int y = 0;
for (int i = 0; i < 10; ++i)
y += i;
System.out.println(y);
(A) 10 (B) 11 (C) 12 (D) 13 (E) 45
8. 下面的循环终止后sum的值为________。
int sum = 0;
int item = 0;
do {
item++;
sum += item;
if (sum >= 4) continue;
}
while (item < 5);
(A) 15 (B) 16 (C) 17 (D) 18
9. 假设你的方法不返回任何值,下面的关键字中________可以作为返回类型。
(A) void (B) int (C) double (D) public
10. 在方法中定义的变量称为________。
(A) 全局变量(B) 方法变量(C) 实例变量(D) 局部变量
四、填空题(每空2分,共40分)
1.Java开发工具箱中的________________命令用于编译一个Java应用程序。
2.一个Java源程序文件必须以________________为文件的扩展名。
3.Java________________能够在Internet上传输和在WWW浏览器中执行。
4.每一个方法的体以________________开始,以________________结束。
5.有一种方法可以采用类名后跟一点(.)和方法名的形式调用,这种方法是________________
方法
6.格式说明符________________用于输出float或double类型的值。
7.Java中的数据类型分为两类:________________类型和________________类型。
8.一个只有在定义它的方法中可知的变量称为________________变量。
9.在向方法传递参数时,每个基本数据类型的变量是按________________传递的,每个对象
是按________________传递的。
10.关键字________________用来声明常数变量。
常数变量在使用前必须且只能初始化一次,
并且以后不能再修改。
11.________________是一个特殊的方法,当实例化对象时,它用于初始化对象的实例变量。
12.当定义类的方法或变量时没有指定成员访问修饰符,这个方法或变量就被认为是
________________成员。
13.一个类可以把其他类对象的引用作为成员,这称为________________。
14.关键字________________用来指明一个新类是一个已存在类的子类。
15.子类重新定义与超类方法同名的方法,这种情况称为________________,此时在子类中调
用超类的同名方法必须在方法调用前加上________________关键字。
16.面向对象程序设计的英文缩写是________________。
五、程序设计题(20分)
编写Rectangle (矩形)类的声明,该类具有double类型的私有实例变量length(长)和width (宽),它们的默认值都为0.0。
提供带有两个参数的构造函数,以便在创建该类的对象时对其进行初始化;提供将实例变量设置为默认值的无参构造函数以便创建时可以不带初始值。
该类有length 和width的设置/读取方法,设置方法应验证length和width都是非负数,否则,设置方法将这些变量设置为它们的默认值。
该类还有计算矩形周长(perimeter)和面积(area)的方法以及toString()方法,toString()方法返回包含矩形的长、宽、周长和面积的字符串。
参考答案
一、E C H I G A J B F D
二、√×√××√××√×
三、1. A 2. C 3. C 4. B 5. D
6. A
7. E
8. A
9. A 10. D
四、1. javac
2. .java
3. Applet
4. { }
5. static 或静态
6. %f
7. 基本引用
8. 局部
9. 值引用
10. final
11. 构造函数
12. 包访问
13. 组合
14. extends
15. 重写或覆盖super
16. OOP
五、
public class Rectangle {
private double length;
private double width;
public Rectangle() { }
public Rectangle(double l, double w) {
setLength(l);
setWidth(w);
}
public void setLength(double l)
{ length = (l<0.0) ? 0.0 : l; }
public double getLength()
{ return length; }
public void setWidth(double w)
{ width = (w<0.0) ? 0.0 : w; }
public double getWidth()
{ return width; }
public double getPerimeter()
{ return 2 * (length + width); }
public double getArea()
{ return length * width; }
public String toString() {
return "Length = " + length +
"\nWidth = " + width +
"\nPerimeter = " + getPerimeter() +
"\nArea = " + getArea();
}
} // end class Rectangle。