java训练题二答案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
解析:如果程序定义了一个或多个构造函数,在创建对象时,必须用自定义的构
造方法来初始化,若没有定义构造方法,则使用默认的构造方法。
20. 类的另一种说法是( B )
A.对象
B.模板
C.实例
D.接口
21.Java 语言有自动收集垃圾的功能,会周期性地回收一些长期不用的对象占用
的内存。下列哪项是对象的清除的途径?( B )
A. public static void main()
B. public static void main(String args[])
B. public static int main(String[] arg) D. public void main(String args[])
8.下列程序的执行结果是( A )
符,有 public, protected, private 和 default 等。 16.非访问限定符有 static 、final、 synchronized 和 abstract 等。 三、简答题
1.什么是类?如何定义一个类?类中包含哪几部分,分别是什么? 答案:见实验指导书。
2.什么是对象?如何创建对象? 答案:见实验指导书。
}
}
A. 编译错误
B. 0
C. 1
D. 运行成功,但不输出
9.下面哪一项的方法调用能填入程序中的横线外?( C )
class CC9
{ static void method()
{ System.out.println(“in CC9”); }
}
class CC9_1
{ void method()
{ System.out.println(“in CC9_1”); }
3.什么是构造方法?构造方法有哪些特点? 答案:见实验指导书。
4.如何对对象进行初始化? 答案:见实验指导书。
A. static X x1;
B. public Y x1=new X(int 123);
C. Y x1;
D. X x1=X();
18.下列关于类说法不正确的是( D )
A. 类是同种对象的集合和抽象
B. 类属于 Java 语言中的复合数据类型
C. 对象是 Java 语言中的基本的结构单位
D. 类就是对象
A. float f[][]=new float[6][6];
B. float []f[]=new float[6][6];
C. float f[][]=new float[][6];
D. float [][]f=new float[6][];
17.设 X,Y 为已定义的类名,下列声明 X 类的对象 x1 的语句中正确的是( A )
…
Super.finalize();
}
A. (1)(2)
B. (1)(2)(3)(4)
C. (1)(2)(3)
D. (2)(3)(4)
解析:考查 Java 语言的自动收集垃圾功能,垃圾回收用于对象的清除,题干中
给出的 4 种垃圾回收的方法,都是可行的方法,因此选 B
22.在 Java 中,数组是当成( B )处理的
A. X(double k){ i=k; }
B. X(double m, double n){ i=m; j=n; }
C. X(){ i=6; }
D. double X(double k){ i=k; return i; }
13.设 A 为已定义的类名,则下列声明 A 类的对象 a 的语句中正确的是( A )
{ s=s1; }
static int getA()
{ return a; }
}
4.下面是一个类的定义程序,请将程序补充完整。
public class MyClass
{ int x, y;
MyClass(int i, int j )
{ x=i; y=j; }
}
5.通过 “.” 运算符实现对成员变量的访问和方法调用。 6.变量的属性用于描述变量的作用域,按作用域分类,变量有局部变量、类变量、
A. public A a=new A();
B. public A a=A();
C. A a=new class();
D. a A;
14.为 AB 类的一个无返回值的方法 method 书写方法头,使得使用类名,AB 作
为前缀就可以调用它,该方法头的形式为( D )
A. abstract void method()
}
public class ex9
{ public static void main(String[] args)
{ ex9 e=new ex9();
e.method();
}
public void method()
{ CC9 o1=new CC9();
CC9_1 o2=new CC9_1();
___________
19.下面关于 Java 语言中的方法说法不正确的是( C )
A. Java 中的方法的参数传递是传值调用,而不是地址调用
B.方法体是对方法的实现,包括变量声明和 Java 合法语句
C.如果程序定义了一个或多个构造方法,在创建对象时,也可以用系统自动生成
空的构造方法
D.类的私有方法不能被其子类直接访问
System.out.println(“c=”+c);
System.out.println(“d=”+d);
}
}
执行结果应是:
a=d
b=100
c=100.0
d=100.0
3.下面是一个类的定义,试将程序补充完整。
class A
{ String s;
static int a=66;
A(String s1)
训练题二
一、选择题
1.下列哪种类成员修饰符的变量只能在本类中被访问?( D )
A. protected
B. public
C. default
D. private
2.在 java 语言的哪一个包是编译器自动导入的?( A )
A. java.lang
B. java.awt
C. jva.io
D. java.applet
public class Test8
{ public void aMethod()
{ static int i=0;
i++;
System.out.println(i);
}
public static void main(String args[])
{ Test8 obj=new Test8();
obj.aMethod();
C. 将 private float a 改为 static float a
D. 将 private float a 改为 float a
4.已知有下面的类说明:
public class Test4
{ private float f=1.0f;.
int m=12;
static int n=1;
public static void main(String[] args)
(1)依靠 Java 的垃圾回收机制回收内存
(2)调用 System.gc(),请求垃圾回收
(3)Java 系统开始运行时,自动调用 java.Object.finalize()释放内存
(4)在程序中调用重写的 finalize()释放系统资源,其格式为:
protected void finalize() throws throwable{
public test(int x)
public Test6(int x)
{ this.x=x;
{ this.x=x;
}
}
}
}
B. class T1{ }
D. class T2{ }
class T2{ }
protected class Test6 extends T2
public class Test6 extends T1, T2 { public int x=0;
方法参数 变量和异常处理参数。
7.一个对象的生命周期有 3 个阶段: 生成 、使用和清除。 解析:
(1) 生成:包括声明、实例化和初始化。 (2) 使用:先定义后使用的原则。 (3) 清除:释放对象所占的内存,利用 Java 的自动收集垃圾功能。 8.对象是一组相关变量和方法的封装体,对象的特征是对象的 行为 、状态和 身份。
B. public void method()
C. final void method()
D. static void method()
15.下面哪个保留字可以定义常量变量,说明这个变量赋值后永不改变? ( C )
A. protected
B. static
C. final
D. super
16.下列哪个不是创建数组的正确语句? ( C )
A. 类
B. 对象
C. 接口
D. 简单数据类型
解析:在 Java 中,数组是作为对象处理的;所以就有数组的定义、创建和初始
化的概念,体现了 Java 语言面向对象的特点。
二、填空题
1.方法头的关键字 void 用来表示方法不返回任何值。
2.写出下列程序的运行结果。
已知:字符‘a’转换成整数对应的是 97。
___________
}
}
A. o1.method(); B. CC9.method(); C. CC9.method(); D. o1.method();
ex9.method(); CC9_1.method(); o2.method();
CC9_1.method();
10.为了区分类中重载的同名的不同方法,要求( A )
A. 采用不同的形式参数列表
B. 使用不同的参数名
C. 修改访问权限
D. 返回值的数据类型不同
11.若需要定义一个静态域,应使用哪一个修饰符?( A )
A. static
B. synchronized
C. private
D. protected
12.设 i,j 为类 X 定义的 double 型成员变量名,下列 X 的构造函数中不正确的是(D )
{ public int x=0;
public Test6(int x)
public Test6(int x)
{ this.x=x;
{ this.x=x; }
}
}
}
7.main()方法是 Java Application 程序执行的入口点,关于 main()方法的方法头
下面哪一项是合法的?( B )
程序如下:
public class C2
{ public static void main(String[] args)
{ char a=‘d’;
int b=a;
float c=a;
double d=a;
System.out.println(“a=”+a);
System.out.println(“b=”+b);
3.给出下面的程序代码:
class Test3{ private float a;
public static void m()
{ // …
}
}
如何使成员变量 a 被方法 m()直接访问?( C )
A. 将 private float a 改为 protected float a B. 将 private float a 改为 public float a
9.一个类的定义分为类注释、 类声明 和类体的定义。 解析:需知道一个类的定义分为类注释、类声明和类体的定义,其中类注释比较
容易遗忘。
10.通过类 MyClass 中的不含参数的构造函数,生成该类的一个对象 obj,可通过 以下语句实现: MyClass obj=new MyClass(); 11.在 Java 程序中,创建新的类对象用关键字 new 。 12.构造方法是类中的一种特殊方法,它用来定义对象的 初始状态 。 13.对象是一组相关变量和相关方法的封装体,是类的一个 实例化 。 14.修饰符可分为 访问限定符 和 非访问限定符 两类。 15.访问限定符有 public 、 protected ,private 和 default 等。 解析:访问限定符是限定类、属性或方法被程序里的其他部分访问和调用的修饰
C. a(int x){ … }
D. void a(int x){ … }
6.在下面的程序源代码文件 Test6.java 中,哪个是正确的类的定义?( B )
A. public class test6{
B. public class Test6{
public int x=0;
public int x=0;
{ Test4 e=new Test4();
}
}
在 main()方法中,下面哪个的使用是正确的( A )?
A. e.f
B. this.n
C. Test4.m
D. Test4.f
5.有一个类 A,下面为其构造函数的声明,其中正确的是( B )。
Leabharlann BaiduA. void A(int x){ … }
B. A(int x) { … }