河北大学电话-河北大学电话
2009 /2010
一
.
单项选择题(共
10
题,每题
3
分)
< p>
1
.在
Java
中,一个类可同时 定义许多同名的方法,这些方法的形式参数个数、类型或顺
序各不相同,传回的值也可以
不相同。这种面向对象程序的特性称为(
C
)
。
A
、隐藏
B
、覆盖
C
、重载
D
、继承
2.
以下关于构造函数的描述
错误
的是(
A
)
。
A
、构造函数的返 回类型只能是
void
型。
B
、构造函数是类的一种特殊函数,它的方法名必须与类名相同。
C
、构造函数的主要作用是完成对类的对象的初始化工作。
D
、一般在创建新对象时,系统会自动调用构造函数。
3.
设有下面两个类的定义:
public class Person {
String name; //
姓名
long id; //
身份证号
class Student extends Person {
int score; //
入学总分
int
getScore(){
return score;
}
}
}
}
则类
Person
和类
Studen t
的关系是(
B
)
。
A
、包含关系
B
、继承关系
C
、关联关系
D
、上述类定义有语法错误
4.
下列哪一种
main()
方法的声明是合法的
?
(
B
)
A. public static void main() { }
B. public static void main(String[]
args){ }
C. void main(String[] args) {
}
D. public void static main(String
[]args){ }
5.
若类
< p>A的成员的访问控制符为默认(即未定义)
,关于该成员访问控制权限的正确 描述是
(
)
。
A
、只能被
A
的成员方法访问。
B
、只能被与
A
在同一 个包里的类的成员方法访问。
C
、只能被
A
的子类的成员方法访问。
D
、可以被所有类访问。
6.
有以下方法的定义,请选择该方法的返回类型是什么?(
D
)
。
ReturnType method(byte x, double y)
{
return (short)x/y*2;
}
A
、
byte
B
、
short
C
、
int D
、
double
7
.为了以字节方式从文件读出内容,可以使 用哪个类?(
)
A
、
FileReader
B
、
FileInputStream
C
、
FileOutputSteam
D
、
FileWriter
8.
设有类型定义
short i=32
;
long j=64
;下面赋值语句中哪一个是不正确的?(
)
A.
j=i
B.
i=j
C.
i=(short)j
D.
j=(long)i
9.
在某个类
A
中存在一个方法:
void GetSort(int x)
,以下哪一项能作为这个方法的重载
的声明?(
)
A.
void GetSort(float x)
B.
int GetSort(int y)
C.
double GetSort(int x,int y)
D.
void Get(int x,int y)
10.
为
AB
类的一个无形式参数无返 回值的方法
method
书写方法头,
使得使用
( )
就
可以调用该方法,该方法的形式为下面哪一种?(
)
A.
public void method()
B.
static void method()
C.
final void method()
D.
abstract void method()
二
.
程序阅读题(共
8
题,每题
5
分)
11
.
写出以下程序段的输出结果。
import .*;
public class abc{
public static void main(String args[
]){
int i,s = 0;
int
a[] = {10,20,30,40,50,60,70,80,90};
for(i = 0; i < i++){
if (a[i]%3 == 0)
s += a[i];
}
n(
}
}
回答:
S=180
12
.写出以下程序段的输出结果。
public class Test{
public static void main(String[] args) {
char grade = 'B';
switch (grade) {
case 'B':
(
case 'C':
(
break;
default:
(
}
}
}
回答:
ExcellentOK
13
p>
.根据重写(
overriding
)的概念,写出以下程序段的输出 结果。
class Cruncher{
void
crunch( int i ){
(“int”);
}
void crunch(String s){
(“String”);
}
public static void main(String args[ ]){
Cruncher
crun=new Cruncher ( );
char ch=’p’;
int i=10;
(ch);
(“,”);
(i);
}
}
回答:
int,int
14
.根据父类子类间构造函数的调用顺序,写出以下程序的运行结果。
class C1 {
C1() {
(
}
class C2 extends C1 {
C2() {
(
}
public class C3 extends C2
{
C3() {
n(
public static void main(String[] args) {
C3 c
= new C3( );
}
}
回答:
123
15
.写出以下程序段的输出结果。
class exam31{
public static void main(String[] args) {
String s1=new String(
String s2=new String(
if(s1==s2){
n(
}
else{
n(
}
}
}
回答:
Exception in thread
16
.写出以下程序段的输出结果。
class Complex extends
Object {
private double x,y;
Complex(double u,double v){
x=u;
y=v;
}
double real(){
return x;
}
double imag(){
return y;
}
void plus(Complex w) {
x+=();
y+=();
}
public String
toString() {
if (y>0)
return x+
else
return x+
}
public static void
main(String[] args) {
Complex c1=new Complex(2,1.5);
Complex c2=new Complex(-0.8,-3);
(c2);
n(ng());
}
}
回答:
1.2 - 1.5i
17
.写出以下程序段的输出结果
:
import .*;
public
class Test{
public static void
main(String[] args){
try{
throw new IOException();}
catch(IOException npex){
n(<
/p>
catch(ArrayIndexOutOfBoundsException
ex){
n(