java经典试题 (2)

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

试题练习:

阅读下面程序:

public class Cycle {

public static void main(String args[]) {

System.out.println(args[0]);

}

}

在命令行中输入java Cycle one two,该程序输出结果是___。

A.Cycle B.one C.two D.上述A、B、C均不对

下列关键字中可以表示常量的是___。

A.final B.default C.private D.transient

在Java Applet程序用户自定义的Applet子类中,常常重载___方法在Applet的界面中显示文字、图形和其它界面元素。

A.start() B.stop() C.init() D. paint() StringBuffer类字符串对象的长度是___。

A.固定B.必须小于16个字符C.可变D.必须大于16个字符

下列语句中哪个是正确的语句___。

A.RandomAccessFile raf = new RandomAccessFile("myfile.txt","rw");

B.RandomAccessFile raf = new RandomAccessFile(new DataInputStream());

C.RandomAccessFile raf = new RandomAccessFile(new File("myfile.txt"));

D.RandomAccessFile raf = new RandomAccessFile("myfile.txt");

如果在子类中使用被子类隐藏的父类的成员变量或方法,应使用关键字___。

A.this B.class C.super D.super class MouseEvent对应的是___。

A.键盘事件B.窗口事件C.按钮事件D.鼠标事件

运行下列程序,会产生什么结果是___。

public class X extends Thread implements Runnable {

public void run() {

System.out.println("this is run()");

}

public static void main(String args[]) {

Thread t=new Thread(new X());

t.start();

}

}

A.第一行会产生编译错误B.第六行会产生编译错误

C.第六行会产生运行错误D.程序会运行和启动

12.在编写Java Application程序时,若需要使用标准输入输出语句,必须在程序

的开头写上___语句。

A.import java.awt.* ; B.import java.applet.Applet;

C.import java.io.* ; D.import java.awt.Graphics;

TextField t = new TextField("they are good",40);是关于一个使用适当的字符间距的字体的TextField 的表达式,___叙述是对的?

A.被显示的字符串可以使用多种字体

B.一行中最大的字符数是40

C.显示的宽度正好是40 个字符宽

D.用户可以编辑字符

有关线程的叙述___是对的。

A.一旦一个线程被创建,它就立即开始运行。

B.使用start()方法可以使一个线程成为可运行的,并且会立即开始运行。

C.当一个线程因为抢先机制而停止运行,它被放在可运行队列的前面。

D.一个线程可能因为不同的原因停止(cease)并进入就绪状态。

下列哪个选项是创建一个标识有“打开”按钮的语句。

A.TextField network11 = new TextField("打开");

B.TextArea network11 = new TextArea("打开");

C.Checkbox network11 = new Checkbox("打开");

D.Button network11 = new Button("打开");

关于垃圾收集的叙述___是对的。

A.程序开发者必须自己创建一个线程进行内存释放的工作。

B.垃圾收集将检查并释放不再使用的内存。

C.垃圾收集允许程序开发者明确指定并立即释放该内存。

D.垃圾收集能够在期望的时间释放被java 对象使用的内存。

以下___类不可以作为FileInputStream 类的构造方法的参数。

A.InputStream

B.File

C.FileDescriptor

D.String

二、填空

一个Java源程序是由若干个语句组成的。

Java中类成员的访问控制符有:private、public、_protected__、缺省,其中_public__是类成员的缺省访问控制符。

Java中的_String__类用于处理字符串常量,而_StringBuffer__类用于处理字符串变量。

线程的创建方式有两种,一种是扩展__Thread_类,一种是实现Runnable___类。

在java中,__this_代表了当前对象的引用,_super__代表了当前对象的父类对象的引用。

在运行java程序时,由java解释器自动引入,而不用import语句引入的包是

_ng__。

三、

1.垃圾收集机制

答:java的堆是一个运行时数据区,类的实例(对象)从中分配空间。Java虚拟机(JVM)的堆中储存着正在运行的应用程序所建立的所有对象,这些对象通过new、newarray、anewarray和multianewarray等指令建立,但是它们不需要程序代码来显式地释放。一般来说,堆的是由垃圾回收来负责的,尽管java规范并不要求特殊的垃圾回收技术,甚至根本就不需要垃圾回收,但是由于内存的有限性,java在实现的时候都有一个由垃圾回收所管理的堆。垃圾回收是一种动态存储管理技术,它自动地释放不再被程序引用的对象,按照特定的垃圾收集算法来实现资源自动回收的功能。

垃圾回收可以简单的理解为:虚拟机自动回收你曾经声明过,但不使用了的那些变量。一般来说垃圾回收是不需要人工干预的,虚拟机会自动的操作这个过程。有的时候可以通过gc对象来手工通知虚拟机来回收垃圾。但并不能保证垃圾回收器会立马回收内存。

2.抽象类与接口

(1)、抽象类里面可以有非抽象方法

但接口里只能有抽象方法

声明方法的存在而不去实现它的类被叫做抽像类(abstract class),它用于要创建一个体现某些基本行为的类,并为该类声明方法,但不能在该类中实现该类的情况。不能创建abstract 类的实例。然而可以创建一个变量,其类型是一个抽像类,并让它指向具体子类的一个实例。不能有抽像构造函数或抽像静态方法。

Abstract 类的子类为它们父类中的所有抽像方法提供实现,否则它们也是抽像类为。取而代之,在子类中实现该方法。知道其行为的其它类可以在类中实现这些方法。

(2)接口(interface)是抽像类的变体。在接口中,所有方法都是抽像的。多继承性可通过实现这样的接口而获得。接口中的所有方法都是抽像的,没有一个有程序体。接口只可以定义static final成员变量。接口的实现与子类相似,除了该实现类不能从接口定义中继承行为。当类实现特殊接口时,它定义(即将程序体给予)所有这种接口的方法。然后,它可以在实现了该接口的类的任何对像上调用接口的方法。由于

相关文档
最新文档