分析《JAVA程序设计》期末考试试题_(二)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《JA V A程序设计》期末考试试题(二)一.判断题

1.Java的源代码中定义几个类,编译结果就生成几个以.class为后缀的字节码文件。(√)

2.Java程序里,创建新的类对象用关键字new,回收无用的类对象使用关键字free。(×)分析: java中没有回收(FREE)内存的功能, 它会自动回收的, 只要把对象close掉就等着回收就行了.

由于对象是使用new运算符动态分配的,java方法是自动为你的处理存储单元重新分配问题。完成这项工作的技术被称为无用单元收集(garbage collection)。它的工作原理:当不存在对一个对象的引用时,我们就假定不再需要那个对象了,那个对象所占有的存储单元可以被收回。在java中并不像在C++中一样需要明确地销毁对象。无用单元收集仅在偶尔执行程序时出现。它不会出现,是因为存在一个或多个不再使用的对象。还有,不同的Java运行时实现将会使用不同的无用单元收集方法,但是在大多数情况下,在编程时不必考虑它。如果一个对象正在持有某些非Java资源,如文件处理或窗口字符字体,那么Java提供了一种称为结束(finalization)的机制。

3.Java有垃圾回收机制,内存回收程序可在指定的时间释放内存对象。(×)分析: 不对,JA V A虽然有垃圾回收机制,但是不能在指定的时间释放内存对象,只能在程序运行期间,当虚拟机空闲的时候回收。

4.构造函数用于创建类的实例对象,构造函数名应与类名相同,返回类型为void。(×)分析: 无返回类型

5.在异常处理中,若try中的代码可能产生多种异常则可以对应多个catch语句,若catch 中的参数类型有父类子类关系,此时应该将父类放在后面,子类放在前面。(√)分析: 个人觉得原因是子类更加具体一些, 可以更好得描述这个异常, 所以会把子类写在前面, 如果把父类写在前面, 那么这个父类就会接受很多的异常了, 后面的子类就接收不到了6.拥有abstract方法的类是抽象类,但抽象类中可以没有abstract方法。(√)7.Java的屏幕坐标是以像素为单位,容器的左下角被确定为坐标的起点。(×)分析: 左上角被确定为坐标的起点

8.静态初始化器是在其所属的类加载内存时由系统自动调用执行。(√)9.在Java中对象可以赋值,只要使用赋值号(等号)即可,相当于生成了一个各属性与赋值对象相同的新对象。(×)分析: 并不是生成一个新对象, 只是引用相同而已, 真正的对象的空间是一样的.

二.单项选择题

1.Java application中的主类需包含main方法,以下哪项是main方法的正确形参?()

A、String args

B、String ar[]

C、Char arg

D、StringBuffer args[] 分析: 比较常见的是String[] args, 但是String args[]也是可以的, ar和args并没有什么区别.

2.以下关于继承的叙述正确的是()。

A、在Java中类只允许单一继承

B、在Java中一个类只能实现一个接口

C、在Java中一个类不能同时继承一个类和实现一个接口

D、在Java中接口只允许单一继承

3.paint()方法使用哪种类型的参数? ()

A、Graphics

B、Graphics2D

C、String

D、Color

分析:这是GUI里面的, 不考.

4.以下哪个不是Java的原始数据类型()

A、int

B、Boolean

C、float

D、char

分析: java有八种基本数据类型,int 4个字节short 2个字节long 8个字节byte 2个字节float 4个字节double 8个字节字符类型布尔类型。对应这八种基本数据类型有八个封装类,封装类是继承自Object的Java类。而基本数据类型所描述的含义与C等相同。5.以下哪项可能包含菜单条()。

A、Panel

B、Frame

C、Applet

D、Dialog

分析:这是GUI里面的, 不考.

6.若需要定义一个类域或类方法,应使用哪种修饰符?()

A、static

B、package

C、private

D、public

7.在浏览器中执行applet 程序,以下选项中的哪个方法将被最先执行()。

A、init()

B、start()

C、destroy()

D、stop()

分析:这是applet里面的, 不考.

8.给出下面代码,关于该程序以下哪个说法是正确的?()public class Person{

static int arr[] = new int[5];

public static void main(String a[])

{

System.out.println(arr[0]);}

}

A、编译时将产生错误

B、编译时正确,运行时将产生错误

C、输出零

D、输出空

分析: 静态方法中调用静态变量是可以的, 但是没有输入, 所以会输出默认值0,

9.下列哪些语句关于Java内存回收的说明是正确的? ()

A、程序员必须创建一个线程来释放内存

B、内存回收程序负责释放无用内存

C、内存回收程序允许程序员直接释放内存

D、内存回收程序可以在指定的时间释放内存对象

10.以下哪个关键字可以用来对对象加互斥锁?()

A、transient

B、synchronized

C、serialize

D、static 11.以下代码段执行后的输出结果为()

int x =-3;

int y =-10;

System.out.println(y%x);

A、-1

B、2

C、1

D、3 12.有以下程序片段,下列哪个选项不能插入到行1。()

1.

2 .public class Interesting{

3. //do sth

4.}

A、import java.awt.*;

B、package mypackage;

C、class OtherClass{ }

D、public class MyClass{ }

分析: 报The public type MyClass must be defined in its own file, MyClass要建在另一java文件中, 一个java文件只允许有一个public(公有)的类, 但如果把public 去掉也是行的, 一个java 文件允许有多个空缺(友好)的类

13.设有下面两个赋值语句:

a = Integer.parseInt(“12”);

b = Integer.valueOf(“12”).intValue();

下述说法正确的是()。

A、a是整数类型变量,b是整数类对象。

B、a是整数类对象,b是整数类型变量。

C、a和b都是整数类对象并且值相等。

D、a和b都是整数类型变量并且值相等。

分析: Integer.parseInt()是把一个字符串转换成int类型的变, 这里就是把字符串类型的12装换成int 类型的12;

static valueOf(int i) 返回一个表示指定的int 值的Integer 实例。先把int转换成Integer类型, 再执行intValue();

相关文档
最新文档