好文档 - 专业文书写作范文服务资料分享网站

JAVA期末考试试卷与答案

天下 分享 时间: 加入收藏 我要投稿 点赞

一.判断题

1. 即使一个类中未显式定义构造函数,

空。 2. 在 Java 的方法中定义一个常量要用

能对应一个 catch 语句。 5. 一个线程对象的具体操作是由

所以用户程序要么派生一个

也会有一个缺省的构造函数,

缺省的构造函数是无参函数,

( 对 )

函数体为

const 关键字。

( 错 ) ( (

错)

3. 在异常处理中总是将可能产生异常的语句放在 try 块中,用 catch 子句去处理异常, 而且一个 try 块之后只

4. Applet 是一种特殊的 Panel,它是 Java Applet 程序的最外层容器。

run() 方法的内容确定的,但是 Thread 的子类并在子类里重新定义

对 )

Runnable 接

Thread 类的 run() 方法是空的 ,其中没有内容 ; run() 方法 ,要么使一个类实现

( 对 )

( ( ( (

口并书写其中 run() 方法的方法体。

6. Java 的字符类型采用的是 Unicode 编码,但所占字节由具体软硬件环境决定。 7. 所有的鼠标事件都由 MouseListener 监听接口的监听者来处理。 8. Java 语言中的数组元素下标总是从 10. 11. 12. 13. 14. 15.

错 ) 错 ) 对 )

0 开始,下标可以是整数或整型表达式。

p=c 是正确的。

new,回收无用的类对象使用关键字

9. 如果 p 是父类 Parent 的对象,而 c 是子类 Child 的对象,则语句

Java 程序里 ,创建新的类对象用关键字

错 ) (错 ( 对

) )

free。 ( 错 )

由继承性可知,程序中子类拥有的成员数目一定大于等于父类拥有的成员数目。 静态初始化器是在其所属的类加载内存时由系统自动调用执行。 注释的作用是使程序在执行时在屏幕上显示

//之后的内容。

Applet 是一种特殊的 Panel,它是 Java Applet 程序的最外层容器。

( 对 ) ( 错 )

对 )

在异常处理中,若 try 中的代码可能产生多种异常则可以对应多个

catch 语句,若 catch 中的参数类

型有父类子类关系,此时应该将父类放在后面,子类放在前面。

二.选择题;

1.以下哪个方法用于定义线程的执行体?

A 、 start()

B 、init()

C C、run() )

C、Applet

C、repaint()

D、 paint()

? (

A

D 、Dialog

D 、synchronized()

2.下面哪个不是 Java 中的容器 ? ( B

A 、 ScrollPane

B 、Canvas

3.下面哪个方法与 applet 的显示无关 ?( A

A 、 draw()

B 、 update()

4.当 Frame 改变大小时,放在其中的按钮大小不变,则使用如下哪种布局方式

A 、 FlowLayout

5.有如下代码段 :

1)

2) { if(unsafe()){//do s omething ? } 3) else if(safe()){//do the other 4) }

? }

B 、CardLayout C、BorderLayout D、 GridLayout

其中,方法 unsafe() 将抛出 IOException,

A 、 public IOException methodName() B 、 public void methodName()

请问可将以下哪项填入第 1 行?( D )

C、 public void methodName() throw IOException

D 、 public void methodName() throws IOException

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

B )

第1页共9页

A 、 transient

B 、synchronized C、 serialize

声明一个接口时,只可以使用(

B 、protected

C、private

D 、static

7.在使用 interface

A 、 private

D )修饰符修饰该接口。

protected D、 public C

8.编译并运行以下程序,以下描述哪个选项是正确的(

1. class A{ 2. protected boolean equals(){ 3. 4.

return super.equals();} }

A 、编译通过运行无异常 C、行 2 出错,不能成功编译

B 、编译通过但运行时出错

D、不能成功编译,行 3 出错

9. Java 的字符类型采用的是

A 、 8

Unicode 编码方案,每个

C、32

Unicode 码占用(

D、64

B )个比特位。

B、16

10.在编写 Java Applet 程序时, 若需要对发生的事件作出响应和处理, 一般需要在程序的开头写上 ( D ) 语句。

A 、 import

java.awt.* ; java.io.* ;

A

B 、import D、 import

)。

java.applet.* ;

java.awt.event.* ;

C、 import

11.以下关于构造函数的描述错误的是(

A 、构造函数的返回类型只能是

void 型。

B 、构造函数是类的一种特殊函数,它的方法名必须与类名相同。

C、构造函数的主要作用是完成对类的对象的初始化工作。

D 、一般在创建新对象时,系统会自动调用构造函数。

12.有程序如下,关于程序的描述哪个是正确的?(

public class Person{

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

public static void main(String a[]) { System.out.println(arr[1]); }

C )

}

A 、编译将产生错误 C、正确,输出 0

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

D、正确,输出 null

B

13.有语句 String s=”hello world ”; ,以下操作哪个是不合法的?(

A 、 int i=s.length();

14.给出如下代码 :

class Test{

private int m;

public static void fun() {

// some code... } }

B 、s>>>=3; C、String ts=s.trim();

D、 String t=s+ ”!”;

如何使成员变量 m 被函数 fun() 直接访问 ?(

A 、将 private int m 改为 protected int m

C )

B 、将 private int m 改为 public int m

C、将 private int m 改为 static int m

D 、将 private int m 改为 int m

15. Java application 中的主类需包含

A 、 int

B 、float

main 方法, main 方法的返回类型是什么?(

C、double

D 、void

D )

第2页共9页

16.有以下方法的定义,请选择该方法的返回类型(

ReturnType method(byte x, double y) {

return (short)x/y*2;

}

D )。

A 、 byte

17.下列哪些语句关于

B 、short C、int

? (

B

D 、double

Java 内存回收的说明是正确的 )

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

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

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

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

18.在编写 Java Applet 程序时, 若需要对发生的事件作出响应和处理, 一般需要在程序的开头写上 ( D ) 语句。

A 、 import

java.awt.* ; java.io.* ;

B 、import D、 import

java.applet.* ;

java.awt.event.* ;

C、 import

19.容器 Panel 和 Applet 缺省使用的布局编辑策略是(

A 、 BorderLayout

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

b

a = Integer.parseInt( = Integer.valueOf(

“ 123”);

“ 123 ”).intValue();

B )

D 、CardLayout

B 、FlowLayout C、GridLayout

下述说法正确的是(

D

)。

A 、 a 是整数类型变量, b 是整数类对象。 B、 a 是整数类对象, b 是整数类型变量。 C、 a 和 b 都是整数类对象并且值相等。

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

C

)。

21.编译并运行以下程序,以下描述哪个选项是正确的(

1. class A{ 2. 3. 4.

protected String toString(){

return super.toString();} }

A 、编译通过运行无异常 C、行 2 出错,不能成功编译

B 、编译通过但运行时出错

D、不能成功编译,行

1。( D

3 出错

22.有以下程序片段,下列哪个选项不能插入到行

1.

2.public class Interesting{

3.//do sth

4. }

A 、 import java.awt.*; C、 class OtherClass{

23.以下哪个不是

A 、 TRUE

B 、package mypackage; D、 public class MyClass{ } )

C、super

C

}

Java 的关键字?( A

B 、const

D 、void

)。

24.关于以下 application 的说明,正确的是(

1 . class StaticStuff

2 . { 3 .

4 . 5 . 6 . 7 . 8.

static int x ;

static { x+=5 ; }

public static void main( String args[ ])

{

System.out.println( “x= ”+ x);

}

第3页共9页

9.

10. }

static { x/=5;}

A 、 4 行与 9 行不能通过编译,因为缺少方法名和返回类型 B 、 9 行不能通过编译,因为只能有一个静态初始化器

C、编译通过,执行结果为:

x=1

x 没有初始化

D 、能通过编译,但程序运行结果不可预知,因为变量

25.FilterOutputStream 是 BufferedOutputStream 、DataOutputStream 及 PrintStream 的父类,以下哪个类可能是

FilterOutputStream 构造函数的参数类型? (B

A 、 OutputStream

26.在使用 interface

A 、 private

B 、File

C、InputStream

D

D 、BufferedOutputStream )修饰符修饰该接口。

声明一个接口时,只可以使用(

B 、protected

C、private protected D、 public

27.有程序片段如下,以下哪个表示式的结果为

Float s=new Float(0.1f); Float t=new Float(0.1f); Double u=new Double(0.1);

true?( B

A 、 s==t B 、s.equals(t) C、u.equals(s) D 、t.equals(u)

三.程序阅读题

1.写出以下程序的运行结果。

public class TestArray { public static void

(54321)

args[ ]){

main(String

int i , j ;

int a[ ] = {1,3,2,5,4};

for ( i = 0 ; i < a.length-1; i ++ ) {

int k = i;

for ( j = i ; j < a.length ; j++ )

if ( a[j]>a[k] ) k = j;

int temp =a[i];

a[i] = a[k]; a[k] = temp; }

for ( i =0 ; i

System.out.println( ); }

}

\

2.写出以下程序的功能。

import java.io.*;

(在屏幕上输出 test.java 文件的内容 )

class FileIODemo{

public static void main(String[ ]

int b;

args) throws IOException{

FileInputStream fileIn=new FileInputStream( “test.java”); while((b=fileIn.read())!=-1){

System.out.print((char)b); } }

}

3. 写出以下程序的运行结果。

import java.util.*;

Str0str1str2 str0str2

public class Vec{

public static void main(String[] args) { String[] s;

s=new String[2];

s[0]=new String(\ s[1]=new String(\

Vector v = new Vector(); for(int i = 0; i <2; i++) v.addElement(s[i]);

第4页共9页

v.insertElementAt(new String(\

Enumeration e = v.elements(); while(e.hasMoreElements()) System.out.print(e.nextElement()+\ System.out.println();

v.removeElement(\ for(int i = 0; i < v.size() ; i++) System.out.println(); } }

System.out.print(v.elementAt(i) +\

4.写出以下程序的运行结果。

class OverloadDemo{

int

void testOverload( int i ){

System.out.println( “int ”); void testOverload(String s){

}

System.out.println( “String ”); }

public static void main(String args[ ]){

OverloadDemo a=new OverloadDemo ( );

char ch=’x’; a.testOverload(ch);

}

}

5.阅读以下程序,写出输出结果。

class First{

public First(){

aMethod(); }

public void aMethod(){

inSecondclass

System.out.println( “in First

}

public class Second extends First{

public void aMethod(){

class”);}

System.out.println( “in Second class”);}

public static void main(String[ ] args){

new Second( ); }

}

6.写出以下程序的运行结果。

class StaticTest {

static int x=1; int y;

StaticTest() {y++; }

public static void

main(String args[ ]){

StaticTest st=new StaticTest(); System.out.println(\

System.out.println(\ st=new StaticTest();

System.out.println(\

static { x++;}

}

}

x=2 st y=1 st y=1

7.阅读以下程序:

class Exp1 {

public static void main(String[] args) {

String s,s1=\

char c; s=args[0];

for (int i=0;i

{c=s.charAt(i); if(c>='a'

&& c<='z'){

s1=s1+Character.toUpperCase(c);

}else{

第5页共9页

JAVA期末考试试卷与答案

一.判断题1.即使一个类中未显式定义构造函数,空。2.在Java的方法中定义一个常量要用能对应一个catch语句。5.一个线程对象的具体操作是由所以用户程序要么派生一个也会有一个缺省的构造函数,
推荐度:
点击下载文档文档为doc格式
9u12r9jz7t3fre38hic91cf865breu010l8
领取福利

微信扫码领取福利

微信扫码分享