当前位置:文档之家› java期末考试选择题题库

java期末考试选择题题库

java期末考试选择题题库
java期末考试选择题题库

1.分析以下程序:

1)public class x{

2)public static void main(String[]args){

3)String ol=new String("ABV");

4)String o2=new String("ABV");

5)if(o1.equals(o2)){

6)System.out.println("Equal");

7) }

8) }

9)}

该程序的执行结果是( B )。

A. 程序执行后无输出

B. 程序执行后输出“Equal”

C. 程序在第5行出现编译错误

D. 程序执行后出现异常

2.执行完下面的程序片段后,下面哪些结论是正确的?(B)

int a,b,c;

a=1;

b=2;

c=(a+b>3?a++:++b);

A. a的值是2,b的值是3

B. a的值是1,b的值是3

C. a的值是1,b的值是2

D. c的值是false

3.下面的数据类型(D )是float型

A. 33.8

B. 129

C. 89L

D. 8.6F

4.finally块中的代码将(A )

A. 总是被执行

B. 如果try块后面没有catch块时,finally块中的代码才会执行

C. 异常发生时才被执行

D. 异常没有发生时才被执行

5.下列哪个不是面向对象程序设计方法的特点(D )

A. 抽象

B. 继承

C. 多态

D. 结构化

6.关于Java语言的内存回收机制,下列选项中最正确的一项是(C )

A. Java程序要求用户必须手工创建一个线程来释放内存

B. Java程序允许用户使用指针来释放内存

C. 内存回收线程负责释放无用内存

D. 内存回收线程不能释放内存对象

7.下列关于Java语言和C++语言之间差别的描述中,不正确的一项是(A )

A. Java虽然提供了安全机制,但是还是没有C++安全

B. Java的内存管理优于C++的内存管理

C. Java没有全局变量,但是C++有全局变量

D. Java没有指针,但是C++的指针最灵活

8.下列选项中,不属于Java核心包的一项是(A )

A. java.swing

B. java.io

C. java.util

D. https://www.doczj.com/doc/a73400033.html,ng

9.为了区分重载多态中同名的不同方法,要求(A )

A. 采用不同的形式参数列表

B. 返回值类型不同

C. 调用时类名或对象名做前缀

D. 参数名不同

10.下列数据类型哪一个属于Java简单数据类型(D )

A. 接口

B. 结构类型

C. 无符号整数类型

D. 字符类型

11.下列关于int类型的说法中,正确的一个是(C )

A. int类型可以自动转换为所有的简单类型

B. int类型只能自动转换为float、long、double类型

C. 103是合法的int类型常量

D. int类型包括有符号整型和无符号整型

12.编译一个定义了两个类和三个方法的的Java源码文件,总共会产生几个字节码文件,这些字节码文件的扩展名是什么?(D)

A. 5个字节码文件,以".java"为扩展名

B. 2个字节码文件,以".java"为扩展名

C. 5个字节码文件,以".class"为扩展名

D. 2个字节码文件,以".class"为扩展名

13.下面的程序段执行后,变量a,b,c的值分别为(A)

int a,b,c;

a=(int)Math.round(-4.51);

b=(int)Math.ceil(-4.51);

c=(int)Math.floor(-4.51);A. -5,-4,-5B. -4,-4,-5C. -5,-5,-5D. -4,-4,-4

14.关于RandomAccessFile类的说法正确的是(B)

A. RandomAccessFile类继承自File类

B. RandomAccessFile类对象可读写Java原始类型数据

C. RandomAccessFile类对象只能从文件读Java原始类型数据

D. 随机读写流的指针所计算的是字符的个数

15.在(B)可以设置线程的优先级

A. 当第一次创建线程时

B. 创建线程后的任何时间

C. 只有在线程启动后

D. 以上都不对

16.分析以下程序:

public class Test{

public int aMethod(){

Static int i=0;

i++;

return i;

}

public static void main(String args[1]){

Test test=new Test();

test.aMethod();

int j=test.aMethod();

System.out.println(j);

}

该程序执行结果为( A )。

A. 编译将失败

B. 编译成功,执行后输出“0”

C. 编译成功,执行后输出“1”

D. 编译成功,执行后输出“2”

17.如果想限制当前类之外对某个成员的访问,应选择如下哪一种修饰符?( )

A. public

B. private

C. protected

D. 不需要任何修饰符

18.分析下列程序:

Class A{

public int getNumber(int a){

return a+1;

}

}

class B extends A{

public int getNumber(int a,char c){ //第7行

return a+2;

}

public static void main(String[]args){

B b=new B();

System.out.println(b.getNumber(0));//第14行

}

}

该程序的执行结果是( A )。

A. 编译成功并输出"1"

B. 编译成功并输出"2"

C. 在第7行出现编译错误

D. 在第14行出现编译错误

19.分析以下程序:

1.public class ForBar{

2.public stauic void main(String[]args){

3.int i=0,j=5;

4.tp=for(;;){

5.i++;

6.for(;;)

7.if(i >--j)break tp;

8.}

9.System.out.println ("i="+i+",j= "+j);

10.}

11.}

该程序的执行结果是( A )。

A. 该程序运行并输出结果:i=1,j=0

B. 该程序运行并输出结果:i=1,j=4

C. 该程序运行并输出结果:i=3,j=4

D. 该程序运行并输出结果:i=3,j=0

20.下列语句执行后,k的值是(B)

int x=3,y=5,k=0;

switch(x%y+3)

{

case 0:k=x*y;break;

case 6:k=x/y;break;

case 12:k=x-y;break;

default:k=x*y-x;break;

}

A. 12

B. 0

C. 15

D. -2

21.下面哪个选项能够构造一个BufferedlnputStream流?( D )

A. New BufferedInputStream(”in.txt”):

B. New BufferedlnputStream(new File(”in.txt”)):

C. New BufferedlnputStream(new ⅥHter(”in.txt”)):

D. New BufferedlnputStream(new FilelnputStream(”in.txt”));

22.下面哪种流可以用于字符输出?( A )A. java.io.OutputStreamB. java.io.OutputStreamWriterC. java.io.EncodeOutputStreamD. java.io.EncodeWriter

23.为了区分重载多态中同名的不同方法,要求(A )

A. 形式参数个数或者类型不同

B. 返回值类型不同

C. 调用时用类名或对象名做前缀

D. 形式参数名称不同

24.下列关于Java语言和C++语言之间差别的描述中,不正确的一项是(A )

A. Java虽然提供了安全机制,但是还是没有C++安全

B. Java的内存管理优于C++的内存管理

C. Java没有全局变量,但是C++有全局变量

D. Java没有指针,但是C++的指针最灵活

25.现有一个变量声明为boolean b1;下面赋值语句中正确的是(A )

A. b1 = true;

B. b1 = True;

C. b1 = "ture";

D. b1 = 0;

26.下面哪些选项不可以用作变量名的首字符?(C)

A. 字母

B. 下划线(_)

C. 数字

D. 美圆符号($)

27.下面的程序段执行后,cont的值是(B)

String strings[]={"string","strong","street","soft"};

int cont=0;

for(int i=0;i if(strings[i].endsWith("ng"))

cont++;

A. 1

B. 2

C. 3

D. 4

28.下述哪些语句为真?( B )

A. 一个FlowLayout定位的组件在容器发生改变时,可以在水平方向上改变大小

B. 一个GfidLayout定位的组件在容器发生改变时,可以保持组件的大小不变

C. 一个BorderLayout定位的组件在容器发生改变时,可以保持组件的大小不变

D. GridLayout定位的组件时,可以用网格状保持单元格大小一致

29.下述哪个方法是MouseMotionListener接口中的方法?( A )

A. public void mouseMoved(MouseEvent)

B. public boolean mouseMoved(MouseEvent)

C. public void mouseMoved(MouseMotionEvent)

D. public boolean MouseMoved(MouseMotionEvent)

30.关于RandomAccessFile类的说法正确的是(B)

A. RandomAccessFile类继承自File类

B. RandomAccessFile类对象可读写Java原始类型数据

C. RandomAccessFile类对象只能从文件读Java原始类型数据

D. 随机读写流的指针所计算的是字符的个数2

31.若有如下程序段:

程序的执行结果正确的是( B )。int index=1;

int foo[]=new int[3];

int bar=foo[index]

int baz=bar+index;

A. 整型变量baz的值为0

B. 整型变量baz的值为1

C. 整型变量baz的值为2

D. 执行有错误

32.分析下列程序:

1)class Person{

2)public void printValue(int i,int j){//...)

3)public void printValue(int i){//…}

4)}

5)public class Teacher extends Person{

6)public void printValue(),//…)

71 public void printValue(int i),//…-

8)public static void main(String args[]){

9)Person t=new Teacher();

10)t.printValue(10);

11) }

]2)}

第10行语句将调用哪行语句?(D ) A. 第2行 B. 第3行 C. 第6行 D. 第7行

33.阅读下列程序:

//第1行

publie class Foo{

publie static void (String [] args){

printWriter out=new printWriter(new

java.io.OutputStreamWriter(System.out),true);

out.println("Heiio");

}

}

在标记为第一行的地方加入下面哪条语句可以使这个能够编译和执行?( A )

A. import java.io.PrintWriter

B. include java.io.PrintWriter

C. import java.io.OutputStreamWriter

D. include java.io.OutputStreamWriter

34.Java语言的类间的继承关系是(B ) A. 多重的B. 单重的C. 线程的D. 不能继承

35.Java语言是一种(D)

A. 面向机器的编程语言

B. 面向过程的编译型编程语言

C. 面向问题的解释型编程语言

D. 面向对象的解释型编程语言

36.下列语句执行后,i的值是(C)

int i=2;

do{i*=i;} while(i<16);

A. 4

B. 8

C. 16

D. 32

37.分析以下程序:

public class Test{

static void leftshift(int i,int j){

i<<=j;

}

public staic void main(String args[]){

int i=4,j=2;

leftshift(i,j);

System.out.println(i);

}

}

该程序的执行结果是( D )。

A. 2

B. 4

C. 8

D. 16

38.下面的程序段输出的结果是(A)

String s1="Abc",s2="Bcd";

System.out.println(https://www.doczj.com/doc/a73400033.html,pareTo(s2));

A. -1

B. 1

C. false

D. true

39.编译并运行下面的程序,产生的结果是(B)

public class A

{

int a1=1;

int a2;

public static void main(String[] args)

{

int a3=2;

A a=new A();

System.out.println("Result="+a.a1+a.a2+a3);

}

}

A. Result=3

B. Result=102

C. 会产生编译错误

D. 不会产生编译错误,但也没有结果输出

40.要创建一个新目录,可用下面(D )类实现

A. FileInputStream

B. RandomAccessFile

C. FileOutputStream

D. File

41.有如下程序:

public clasS ExceptionTest(

class TestException extends Exception{}

public void runTest()throws TestException{}

public void test() /*point x */

{

runTest();

}

}

在该程序的poim x处,增加如下哪个选项程序才能通过编译?( A )

A. throws Exception

B. catch(Exception e)

C. throws RuntimcException

D. catch(TestException e)

42. 下面这些方法中(B )方法不是Applet的基本方法。

A. init()

B. run()

C. stop()

D. start()

43.分析以下程序段:

abstract class AbstractIt {

abstract float getFloat (); //第2行

}

public class AbstractTest extends AbstractIt {

private float f1=1.0f;

private float getFloat(){return fl;} //第6行

}

下面哪一种结果正确?( C )

A. 可编译成功

B. 在第6行运行失败

C. 在第6行编译失败

D. 在第2行编译失败

44.一个包含Java类A,B,C的源程序A.java,编译产生的类文件是( B )。

A. A.class

B. A.class,B.class,C.class

C. A.class,B$.class,C$.class

D. AS.class,B$.class,C$.class

45.分析以下程序:

public class ArrayList{

public static void main(String[]args){

float f1[],f2[];

fl=new float[10l;

f2=f1; //第5行

System.out.Println(“f2[0]="+f2[0]); //第6行

}

}

该程序执行的结果是( A )。

A. 输出结果:f2[0]=0.0

B. 输出结果:f2[0]=NaN

C. 第5行有错误导致编译失败

D. 第6行有错误导致编译失败

46.设变量k已定义,以下由while语句构成的循环执行的次数是(A)

while(true) k++;

A. 无限次

B. 有语法错误,不能执行

C. 一次也不执行

D. 执行1次

47.下面的说法正确的是( C )。

A. Java语言里的线程不是对象

B. Java中任何可执行的类都需要main方法

C. Java语言的类都是java.1ang.Object的子类

D. double是Java语言的合法标识符

48.下述哪个事件表明在一个java.awt.Component组件上有一个按键按下?( C )

A. KeyEvent

B. KeyDownEvent

C. KeyPressEvent

D. KeyTypedEvent

49.下面哪个选项可以构造一个DataOutputStream对象?( D )

A. new DataOutputStream("out.txt");

B. new DataOutputStream(new File("out.txt"));

C. new DataOutputStream(new Writer("out.txt"));

D. new DataOutFIutStream(new FileOutputSream("out.txt"));

50.定义主类的类头时可以使用的访问控制符是(A )

A. public

B. protected

C. private

D. private protected

51.下面(B )修饰符所定义的方法必须被子类所覆盖

A. final

B. abstract

C. protectd

D. volatile

52.下述哪个方法是MouseMotionListener接口中的方法?( A )

A. public void mouseMoved(MouseEvent)

B. public boolean mouseMoved(MouseEvent)

C. public void mouseMoved(MouseMotionEvent)

D. public boolean MouseMoved(MouseMotionEvent)

53.阅读下列程序:

import java.awt.*;

public class Test extends Frame{

public Test(){

add(new Label("Hello"));

add(new TextFieId("Hello"));

add(new Button("Hello")); //第6行

pack();

setVisible(true);

}

public static void main(String[]args){

new Test();

}

}

该程序的结果是( B )。

A. 代码编译不通过

B. 显示一个窗口,仅包含一个按钮

C. 在第6行抛出一个IllegalArgumentException异常

D. 出现一个空窗口

54.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( D )

A. CardLayout

B. FlowLayout

C. BorderLayout

D. GridLayout

55.阅读下列程序:

public C1ass X2 implements Runnable{

private int x;

private int y;’

public static void main(String[]args){

X2 that=new X2();

(new Thread(that)).start();//第6行

(new Thread(that)).start();//第7行

}

public synchronized void run(){

for(;;){

x++;

y++;

System.out.println("x="+x+",y="+y);

}

}

}

该程序的执行结果是( D )。

A. 在第11行会引起编译错误

B. 在第6、7行会引起编译错误

C. 程序可能输出X、Y不相同的数对,如:"x=2,y=1"

D. 程序输出递增重复的X、Y数对,如:"x=l,y=l"、"x=2,y=2"、…

56.分析下面两个Java程序:

//ClassOne.java

package com.ab.pkgl;

public class ClassOne(

private Char Var=’a’;

char getVar(){return var;}

}

//ClassTest.java

package com.ab.Pkg2;

import com.ab.pkgl.ClassOne;

public class ClassTest extends ClassOne{ //第3行

public 8tatiC void main(String args[]){

char a=new ClassOne().getVar();//第5行

char b=new ClassTest()。getVar();//第6行

}

}

ClassTest.java程序的执行结果是( B )。

A. 程序编时在ClassTest.java的第3行出现错误

B. 程序编译成功,程序执行后无异常抛出

C. 程序编时在ClassTest.java的第5行出现错误

D. 程序编译成功,程序执行时在ClassTest.java的第5行出现异常

57.分析下列程序:

1)public class SuperClass{

2) class SubClassA extends SuperClass{}

3) class SubClassB extends SuperClass{}

4) public void test(SubClassA foo){

5) SuperClass bar=foo;

6) }

7} }

下述对该程序的陈述哪一条是正确的?( C )

A. 第5行的赋值语句是非法的

B. 第5行的赋值语句是合法的,但执行时抛出一个ClassCastException异常

C. 程序语法是正确的,使用时不会抛出异常

D. 程序语法不正确,不允许内部类继承外部类

58.下面的说法正确的是( D )。

A. 应用程序中可以使用的所有语句都可以在Applet中使用

B. Applet程序中可以使用的所有语句都可以在应用程序中使用

C. Applet程序都可以当作应用程序使用

D. System.exit(0)不能在Applet中使用

59.以下语句输出的结果是(A )

String str="123";

int x=4,y=5;

str=str+(x+y);

System.out.println(str);

A. 1239

B. 12345

C. 会产生编译错误

D. 123+4+5

60.下面哪个选项可以确定prefs是一个目录或文件?( D )

A. boolean exists=Directory.exists(”prefs”);

B. boolean exists=(new File(”prefs”)).isDir();

C. boolean exists=(new Directory(”prefs”)).exists();

D. boolean exists=(new File(”prefs”)).isDirectory();

61.如果在编译Java程序时,编译结果报告说找不到要编译的代码,通常的错误不是如下的哪一项(A )

A. 没有import相应的包

B. 文件名拼写错误

C. 未加.java后缀

D. 源文件不再当前目录下

62.设有两个类A、B,以下描述中表示B继承自A的是(D)

A. class A extends B

B. class B implements A

C. class A implements

D. class B extends A

63.下列说法中,正确的一个是(A )

A. 接口属于复合数据类型

B. 接口属于简单数据类型

C. 标识符的总的字符个数是有限的

D. 标识符就是保留字

64.分析以下程序:

public class X{

pubLic static void main(String[] args){

int[] a=new int[1];

modify(a);

Sysnem.out.println(a[0]);

}

public void modify(int[]a){

a[0]++;

}

}

该程序的执行结果为( D )。

A. 程序执行并输出"0"

B. 程序执行并输出"1"

C. 程序可以执行,但会因错误而终止

D. 第4行有个“可能没有定义的变量”而引起编译失败

65.阅读下面的程序,选择正确的说法(B)

class A

{

public static void main(String args[])throws Exception

{

method();

}

static void method() throws Exception

{

try

{

System.out.print("try:performed\t");

}

finally

{

System.out.print("finally:always performed");

}

}

}

A. 编译该程序会显示产生编译错误,因为method()抛出异常,而调用它时没有进行处理

B. 程序编译成功,运行该程序输出:try:performed finally:always performed

C. 程序编译成功,运行该程序输出:try:performed

D. 程序编译成功,运行该程序输出:finally:always performed

66.有如下程序:

public class Foo{

public Static void main(String args[]){

try{return;}

finally{system.out.println("Finally");}

}

}

该程序的执行结果是( B )。

A. 程序无输出

B. 程序输出”Finally”

C. 代码可以通过编译,但执行时产生异常

D. 因为缺少catch块,所以编译出错

67.分析下列程序:

1)class A{

2) public byte getNumber(){

3) return 1;

4) }

5) }

6)

7)class B extends A{

8)public short getNumber() {

9) return 2;

10) }

11)

12)public static void main(String args[]){

13) B b=new B();

14) System.out.println(b.getNumber());

15) }

16) }

该程序的结果是( C )。

A. 编译成功并输出1

B. 编译成功并输出2

C. 编译在第8行引起错误

D. 编译在第14行引起错误

68.用Java虚拟机执行类名为Hello的应用程序的正确命令是( D )。

A. java Hello.class

B. Hello.Class

C. java Hello.Java

D. java Hello

69.阅读以下程序:

boolean a=false;

boolean b=true;

boolean c=(a&b)&&(!b);

int result=b==false?1=2;

这段程序执行完后,C与result的值是( D )。

A. c=false;result=l;

B. c=true;result=2;

C. c=true;result=l;

D. c=false;result=2;

70.分析以下程序:

public class X{

public static void main(String[]args){

byte b=127;

byte c=126;

byte d=b+c; //第5行

}

}

以上程序执行结果正确的是( B )。

A. 编译成功并且变量d的值为253

B. 第5行有错误导致编译不成功

C. 第5行有“溢出”导致执行失败

D. 第3和4行有错误导致编译不成功

71分析下列程序:

1) ClasS Super{

2)public float getNum(){return 3.0fj)

3) }

4) 完整

5)public class Sub extends Super{

6) //这里要插入方法

7) }

在该程序的第6行中插入下面哪个方法会引起编译错误?( B )

A. public float getNum(){retum 4.0f;)

B. public void getNum(){}

C. public void getNum(double d){}

D. public double getNum(float d){retun 4.Od;}

72.以下的选项中能正确表示Java语言中的一个整型常量的是(B )A. 435. B. -34 C. 34,000 D. 4 5 6

73.下列关于https://www.doczj.com/doc/a73400033.html,ng包中封装的基本类的说法中,不正确的一项是(B )

A. https://www.doczj.com/doc/a73400033.html,ng 包封装了Object、Class、System、String、Thread等基本类

B. System类提供了标准的I/O操作,可以实例化

C. Class类的对象包含所对应的类的基本信息,可以通过调用Class类的方法访问这些信息

D. Object类是所有类都必须继承的类

74.下列关于注释语句的描述中,正确的一项是(C )

A. 以//开始的是多行注释语句

B. 以/*开始,*/结束的是单行注释语句

C. 以/**开始,*/结束的是可以用于生成帮助文档的注释语句

D. 以/**开始,*/结束的是单行注释语句

75.分析下列程序:

class super{

public int i=O;

public Super(String text){

i=1;

}

}

public class Sub extends Super{

public Sub(String text){

i=2;

}

public static void main(String args[]){

Sub sub=new Sub("Helio");

System.out.println(sub.i);

}

}

该程序的结果是( D )。

A. 编译失败

B. 编译成功且输出"0"

C. 编译成功且输出"1"

D. 编译成功且输出"2"

76.定义变量b:boolean b=ture;则String.valueOf(b)的类型是(B)

A. Boolean

B. String

C. false

D. int

77.为了使包abc中的所有类在当前程序中可见,可以使用的语句是(D )

A. import abc.*;

B. package abc.*;

C. import abc;

D. package abc;

78.关于线程的说法不正确的是(C)

A. 因为休眠而暂时停止运行的线程,休眠时间到了后立即直接运行

B. 线程执行wait()方法后,必须调用notify()方法唤醒它

C. 一个线程因为输入输出而暂时停止运行,待输入/输出完成后,且没有出现输入/输出异常,即可恢复到可运行状态

D. 挂起、休眠或等待的线程都可以恢复到可运行状态,但停止运行的线程将不能再重新运行

79.分析下列程序:

1)class Super{

2)public int getLength(){return 4;}

3)}

4)

5)public class Sub extends Super{

6)public int getLength(){return 5;}

7)

8)public Static void main(String[]args) {

9) Super sooper=new Super();

10) Sub sub=new Sub();

11) System.out.println(

i2) sooper.getLength()+","+sub.getLength());

13) }

14)}

该程序的输出是( B )。

A. 4,4

B. 4,5

C. 5,4

D. 5,5

80.假定有程序段:

import java.io.*;

public class Fool{

public static void main(String[]args){

try{

File f=new File("file.txt");

OutputStream out =new File OutputStream(f,true);

int a=38; //ASCII码38="&"

out.write(a);

out.close();

}catch(I0Exception e){}

}

}

其中file.txt包含的是ASCII码的文本文件,该程序的执行结果是( C )。

A. 程序不能编译

B. 程序运行后文件没有变化

C. 程序运行后文件增加了一个字符

D. 运行后抛出异常因为文件没有关闭

81.一下关于面向对象概念的描述中,不正确的一项是(B)

A. 在现实生活中,对象是指客观世界的实体

B. 程序中的对象就是现实生活中的对象

C. 在程序中,对象是通过一种抽象数据类型来描述的,这种抽象数据类型称为类

D. 在程序中,对象是一组变量和相关方法的集合

82.下列方法定义中,方法头不正确的是(D)

A. public int x(){...}

B. public static int x(double y){...}

C. void x(double d)

D. public static x(double a){...}

83.下面的程序段输出的结果是(C)

int i=1,b,c;

int []a=new int[3];

b=a[i];

c=b+i;

System.out.println(c);

A. 0

B. 2

C. 1

D. 4

84.编译下面的程序,得到的结果是(C)

public class A implements Runnable

{

public void run()

{

System.out.println("OK.");

}

public static void main(String[] args)

{

Thread Th=new Thread(new A());

Th.start();

}

}A. 程序不能编译,产生异常 B. 程序能编译运行,但没有任何结果输出

C. 程序能编译运行,输出结果:OK.

D. 上面说法都不对

85.下述声明中哪一种可防止该类产生子类?( D )

A. static class FooBar{}

B. private class Foobar{}

C. abstract class FooBar{} D . final public class FooBar{}

86.分析以下程序段:

Integer i=new Integer(42);

long l=new long(42)}

double d=new double(42.0);

下面哪个表达式的值为真?( A )

A. (i==1)

B. (i==d)

C. (d==1)

D. (i.equals(42))

87.在一个相同的包中,想让一个类能够引用另一个类的成员,达到这个目的最小的访问控制权限的修饰符是什么?( C )

A. public

B. private

C. protected

D. 不需要任何修饰符

88.分析以下程序:

public class Test{

public stanic void main (String args[]){

int i=0;

while(i){

if(i==4){

break;

}

++i;

}

程序可能的执行结果是( D )。

A. 执行后i=0

B. 执行后i=3

C. 执行后i=4

D. 编译不能通过

89.下列表达式哪些是正确的?( C )

A. byte=340

B. Boolean=1

C. long l=-2

D. double=0.9239d

90.下列关于浮点型数据的说法中,不正确的一个是(C )

A. 浮点型数据属于实型数据

B. 浮点类型数据由数字和小数组成

C. 浮点型数据小数位数越少越精确

D. 浮点型数据包括实型常量和实型变量

91.关于Java语言的内存回收机制,下列选项中最正确的一项是(C )

A. Java程序要求用户必须手工创建一个线程来释放内存

B. Java程序允许用户使用指针来释放内存

C. 内存回收线程负责释放无用内存

D. 内存回收线程不能释放内存对象

92.下列选项中,不属于JDK文件目录中的子目录的是(B )

A. bin子目录

B. include子目录

C. j2sdk1.4.2子目录

D. lib子目录

93.下面的程序段输出的结果是(A)

String s1="Java",s2="java";

System.out.println(s1.equalsIgnoreCase(s2));

A. true

B. false

C. Java

D. java

94.下列选项中,用于在程序开头引入包的关键字是(A)

A. import

B. implements

C. interface

D. protected

95.容器被重新设置大小后,哪种布局管理器的容器中的组件大小不随容器大小的变化而改变?( D )

A. CardLayout

B. FlowLayout

C. BorderLayout

D. GridLayout

96.下面对methoda0方法的哪一种声明是被包中的类可访问的,并且访问时不需要建立methoda0方法所在类的实例?( C )

A. abstract public void methoda();

B. public abstract double methoda();

C. static void methoda(double d1){}

D. public native double methoda0{}

97.设有程序为:

public class Test {

public static Void main(String[]args){

String foo=args[1];

String bar=args[2];

String baz=args[3];

System.out.println("baz="+baz);

}

}

下述哪一行命令可以使得执行该程序的输出为baz=2?( C )

A. java Test 2222

B. java Test 1 2 3 4

C. java Test 4 2 4 2

D. java Test 4 3 2 1

98.下面关于Applet的说法正确的是( B )。

A. Applet也需要main方法

B. Applet必须继承java.awt.Applet

C. Applet能访问本地文件

D. Applet程序不需要编译

99.如果一个Applet包含有绘图功能,则下面哪个方法必须被覆盖?( C )

A. start方法

B. stop方法

C. paint方法

D. destroy方法

100.下列程序段执行后,t5的结果是(A)

int t1=5,t2=6,t3=7,t4,t5;

t4=t1t5=t4

A. 5

B. 6

C. 7

D. 以上都不对

101.关于类的说法中,不正确的一项是(D)

A. 一般类体的域包括常量、变量、数组等独立的实体

B. 类中的每个方法都由方法头和方法体构成

C. java程序中可以有多个类,但是公共类只有一个

D. java程序可以有多个公共类

102.以下语句输出的结果是(B)

System.out.println(Math.floor(-0.8));

A. 0

B. -1

C. -0.8

D. 0.8

103.设有程序段如下:

int i=1,j=10;

do{

if(i>j)continue;

j--;

}while(++i<6);

这段代码结束后i和j的值是( A )。

A. i=6,j=5

B. i=5,j=5

C. i=6,j=4

D. i=5,j=6

104.下面哪个选项能够获得文件file.txt的父目录名?( B )

A. String name=File.getParentName(”file.txt”);

B. String name=(new File(”file.txt”)).getParent();

C. String name=(new File(”file.txt”)).getParentName();

D. String name=(new File(”file.txt”)).getParentFile();105.下列哪个方法可用于创建一个可运行的类?( A )

A. public class X implements Runnable{public void run(){……}}

B. public class X implements Thread{public void run(){……}}

C. public class X implements Thread{public int run(){……}}

D. public class X implements Runnable{pro tected void run(),……-- 106.下列语句执行后,k的值是(A)

int i=6,j=8,k=10,m=7;

if(!(i>j|m>k++)) k++;

A. 12

B. 11

C. 10

D. 9

107.设x为int型变量,则执行以下语句段后,x的值为(B)

x=10;

x+=x-=x-x;

A. 10

B. 20

C. 40

D. 30

108.若以下变量均已正确定义并赋值,下面符合java语言语法的表达式是(B)

A. a=a<=7

B. a=7+b+c

C. int 12.3%4

D. a=a+7=c+b

109.Java语言的类间的继承关系是(B ) A. 多重的 B. 单重的 C. 线程的 D. 不能继承

110.下面(D )陈述是不对的

A. 一个实例方法可以同时为protected和abstract类型

B. static变量也可以是final类型

C. static方法也可以是protected类型

D. final方法也可以是abstract类型

111.分析以下程序:

string foo="blue";

boolean[] bar=new booiean[1];

if(bar[0]){

foo=”green”;

}

变量foo的值是(C )。

A. " "

B. null

C. blue

D. green

112.有一个类A,对于其构造函数的声明正确的是(B )

A. void A(int x){...}

B. A(int x){...}

C. A A(int x){...}

D. int A(int x){...}

113.要创建一个新目录,可用下面(D )类实现

A. FileInputStream

B. RandomAccessFile

C. FileOutputStream

D. File

115.byte的数值范围是(C )。

A. 0~32767

B. 0~65535

C. -256~255

D. -32768~32767

116.编译并运行下面的程序,运行结果为( C )

public class A

{

public static void main(String[] args)

{

A a=new A();

a.method(8);

}

void method(int i)

{

System.out.println("int: "+i);

}

void method(long i)

{

System.out.println("long: "+i);

}

}

A. 程序编译有错误,因为两个method()方法必须定义为静态(static)的

B. 程序可以编译运行,输出结果为long:8

C. 程序可以编译运行,输出结果为int:8

D. 程序可以编译运行,但没有输出

117.定义类B和类C如下,并将其保存为:B.java,编译B.java文件,得到的结果是( B )

class B

{int b;

B(int i){b=i;}}

class C extends B

{double c=7.8;}

A.代码能够成功编译并运行

B.代码无法编译,因为类B不是一个应用程序或小程序

C.代码无法编译,因为类B没有定义不带参数的构造器

D.代码无法编译,因为类C没有定义一个不带参数的构造器118.下面的程序段输出的结果是( A )

StringBuffer buf1=new StringBuffer(20);

System.out.println(buf1.length()+","+buf1.capacity());

A. 0,20

B. 0,null

C. 20,20

D. 0,0

119.阅读下列程序:

class A implements Runnable{

public int i=1;

public void run(){

this.i=10;

}

}

public class Test{

public static void main(String[]args){

A a=new A();

new Thread(a).start();//第ii行

int j=a.i;

System.out.print("j="+j);//第13行

}

}

在第13行,J的值应是如下哪个选项?( B )

A.1

B.10

C.J的值不能确定

D.第11行会引起编译错误

120.分析下面的Java程序:

public class Test{

Dublic static void main(String[]args){

class Foo{ //第3行

public int i=3;

}

Object o=(Object)new Foo();//第6行

Foo foo=(Foo)o; //第7行

System.out.println(foo.i);

}

}

该程序的结果是( D )。

A.在第3行出现编译错误

B.在第6行出现编译错误

C.在第7行出现编译错误

D.程序执行后输出3 121.以下的变量定义中,合法的语句是( B )

A.float 1_variable=3.4;

B.int abc_=21;

C.double a=1+4e2.5;

D.short do=15;

122.下列整型的最终静态属性i的定义中,正确的是(C )

A.final i

B.static int i;

C.static final int i=234;

D.final float i=3.14f;

123.以下由do-while语句构成的循环执行的次数是( D )

int k=0;

do{++k;} while(k<1);

A. 无限次

B. 有语法错,不能执行

C.一次也不执行

D.执行1次

124.定义类A如下:

class A

{ int a,b,c;

public void B(int x,int y,int z){a=x;b=y;c=z;}

}

下面对方法B()的重载哪些是正确的(C )

A. public void A(int x1,int y1,int z1){a=x;b=y;c=z;}

B. public void B(int x1,int y1,int z1){a=x;b=y;c=z;}

C. public void B(int x,int y){a=x;b=y;c=0;}

D. public B(int x,int y,int z){a=x;b=y;c=z;}

125.设x,y均为已定义的类名,下列声明对象x1的语句不可能正确的是( B )

A.public x x1=new y();

B.x x1=x();

C.x x1=new x();

D.public y x1=new x();

126.下面(A)是java语言的所有类的祖先类(基类)

A. Objects

B. Double

C. Integer

D. packages

127.定义字符串s;String s="Micrsoft公司";执行下面的语句,c的值为(B)

char c=s.charAt(9);

A.产生数组下标越界异常

B.司

C.null

D.公

128.下述哪些语句为真?( B )

A. 一个FlowLayout定位的组件在容器发生改变时,可以在水平方向上改变大小

B. 一个GfidLayout定位的组件在容器发生改变时,可以保持组件的大小不变

C. 一个BorderLayout定位的组件在容器发生改变时,可以保持组件的大小不变

D. GridLayout定位的组件时,可以用网格状保持单元格大小一致

129.有如下程序代码,在中文提示处填写以下(A)选项的编码能够保证程序顺利执行。

//填写编码处

public class getImage extends Applet

{

Image pic;

public void init()

{

try{

URL u=new URL(this.getCodeBase(),thisgetParameter("IMAGE"));

this.pic=this.getImage(u);

}

catch(MalformedURLException e)

{System.err.println(e);}

}

public void paint(Graphics g)

{

g.drawImage(this.picture,0,0,this);

}

}A. import java.applet.*; import java.awt.*; import https://www.doczj.com/doc/a73400033.html,.*;

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

C. import java.applet.*; import https://www.doczj.com/doc/a73400033.html,.*;

D. import java.awt.*; import https://www.doczj.com/doc/a73400033.html,.*;

130.分析以下程序:.

public class X {

public Object m(){

Object O=new Float(3.14F);

Object []oa=new Object[1};

oa[0]=o; //第5行

o=null; //第6行

oa[0]=null; //第7行

retrn ou;

}

}

当第3行的Float对象产生后,在哪一行会作为垃圾被回收?( B )

A. 在第5行之后

B. 在第6行之后

C. 在第7行之后

D. 不会在该方法中进行

131.分析下面的Java程序:

public class Test{

Dublic static void main(String[]args){

class Foo{ //第3行

public int i=3;

}

Object o=(Object)new Foo();//第6行

Foo foo=(Foo)o; //第7行

System.out.println(foo.i);

}

}

该程序的结果是( D)。

A. 在第3行出现编译错误

B. 在第6行出现编译错误

C. 在第7行出现编译错误

D. 程序执行后输出3

132.分析下列程序:

public class Test4{

public static void main(String args[]){

class Foo{

public int i=3;

}

Object o=(Object) new Foo(); //第6行

Foo foo=(Foo)o; //第7行

System.out.println(foo.i);

}

}

该程序的执行结果是( B )。

A. 编译失败

B. 编译成功且输出"3"

C. 编译成功,但第6行抛出异常ClassCastException

D. 编译成功,但第7行抛出异常ClassCastException

133.只包含一个带public修饰的Java类Abc的Java程序的正确命名是( B )。

A. Abc

B. Abc.Java

C. abc.java

D. 一个任意的标识符后带后缀.java

java期末考试试题及答案

1.谈谈final, finally, finalize的区别。 final关键字: a) 如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为abstract的,又被声明为final的。 b) 将变量或方法声明为final,可以保证它们在使用中不被改变。 c) 被声明为final的变量必须在声明时给定初值,而在以后的引用中只能读取,不可修改。 d) 被声明为final的方法也同样只能使用,不能重载。 finally关键字:在异常处理时提供finally 块来执行任何清除操作。如果抛出一个异常,那么相匹配的catch 子句就会执行,然后控制就会进入finally 块。 finalize:方法名,不是关键字。Java技术允许使用finalize() 方法在垃圾收集器将对象从内存中清除出去之前做必要的清理工作。这个方法是由垃圾收集器在确定这个对象没有被引用时对这个对象调用的。它是在Object 类中定义的,因此所有的类都继承了它。子类覆盖finalize() 方法以整理系统资源或者执行其他清理工作。finalize()方法是在垃圾收集器删除对象之前对这个对象调用的。 2.GC是什么? 为什么要有GC? GC是垃圾收集器。Java 程序员不用担心内存管理,因为垃圾收集器会自动进行管理。要请求垃圾收集,可以调用下面的方法之一: System.gc() Runtime.getRuntime().gc() 3.Math.round(11.5)等於多少? Math.round(-11.5)等於多少? 写程序Math.round(11.5) = 12 Math.round(-11.5) = -11 4.给我一个你最常见到的runtime exception ArithmeticException, ArrayStoreException, BufferOverflowException, BufferUnderflowException, CannotRedoException, CannotUndoException, ClassCastException, CMMException, ConcurrentModificationException, DOMException, EmptyStackException, IllegalArgumentException, IllegalMonitorStateException, IllegalPathStateException, IllegalStateException, ImagingOpException, IndexOutOfBoundsException, MissingResourceException, NegativeArraySizeException, NoSuchElementException, NullPointerException, ProfileDataException, ProviderException, RasterFormatException, SecurityException, SystemException, UndeclaredThrowableException, UnmodifiableSetException, UnsupportedOperationException

JAVA期末考试复习试题

JAVA期末考试复习试题 JAVA期末考试复习试题 1.使用Java语言编写的源程序保存时的文件扩展名是()。(A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为()。(A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是()。(A)a[0]; (B)a[a.length-1]; (C)a[3]; (D)int i=1; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数()。(A)封装(B)继承(C)覆盖(D)重载5.在类的定义中构造函数的作用是()。(A)保护成员变量(B)读取类的成员变量(C)描述类的 特征(D)初始化成员变量6.下面关键字中,哪一个不 是用于异常处理语句()。(A)try (B)break (C)catch (D)finally 7.类与对象的关系是()。 (A)类是对象的`抽象(B)对象是类的抽象(C)对象 是类的子类(D)类是对象的具体实例8.下面哪一个是Java中不合法的标识符()。(A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形

式参数无返回值的方法method书写方法头,使得使用类名AB 作为前缀就可以调用它,该方法头的形式为( )。(A)static void method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接 口,下列哪个方法是正确的()。(A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 11.Java源文件和编译后的文件扩展名分别为 ()(A) .class和 .java (B).java和 .class (C).class和 .class (D) .java和 .java 12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类 的( )方法来完成一些画图操作。(A) start( ) (B) stop( ) (C) init( ) (D) paint( ) 13.对于一个Java源文件,import, class定义以及package正确的顺序是: (A) package,import,class (B) class,import,package (C) import,package,class (D) package,class,import 14.下面哪个是非法的:(A) int I = 32; (B) float f = 45.0; (C) double d = 45.0; (D) char c = ‘u’; //符号错15.Java语言使用的字符码集是(A) ASCII (B) BCD (C) DCB (D) Unicode 16. 如果一个类的成员变量只能在

JAVA期末考试试卷

天津城市建设学院2007~2008学年第二学期 《 java 语言程序设计A 》 试题A 卷 课程号:073101-0 试卷说明:闭卷考试,时间120分钟。 一、 填空(本题共15空,每空2分,共30分) 1.如果一个java 源程序文件中定义有4个类,使用sun 公司的JDK 编译器javac 编译该源程序文件将产生_____4___个文件名与类名相同扩展名为___.Class_____的字节码文件。 2.Java 中所有类都是类 __Object__的子类。 3.请填出在java .lang 包中与下列基本数据类型相对应的封装类: float :java .lang .Float , char : _ java .Lang.char_______, boolean : ___ java .Lang.boolean_____。 4.被关键字____final______修饰的方法是不能被当前类的子类重新定义的方法 5.线程的四种状态是__新建_____ 、_运行_ 、_中断 、__死亡___。 6.java 语言中__https://www.doczj.com/doc/a73400033.html,ng.Objet ___是所有类的根。 7.Swing 的事件处理机制包括__事件的监听者__、事件和事件处理者。 8.URL_____Uniform Resourse Locator_____是的缩写。 9.java 有两类应用程序java Application 和____java 10.转义字符以___\__开头。 二、选择(本题共20小题,每题2分,共40分) 1.欲构造ArrayList 类的一个实例,此类继承了List 接口,下列哪个方法是正确的 ? ( B ) A 、 ArrayList myList=new Object (); B 、 List myList=new ArrayList (); C 、 ArrayList myList=new List (); D 、 List myList=new List (); 2.paint()方法使用哪种类型的参数? ( A ) A 、 Graphics B 、 Graphics2D C 、 String D 、 Color 3.指出正确的表达式 ( C ) A 、 byte=128; B 、 Boolean=null; C 、 long l=0xfffL; D 、 double=0.9239d; 4.指出下列程序运行的结果 ( B ) public class Example{ String str=new String("good"); char[]ch={'a','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex .change(ex .str,ex .ch); System .out .print(ex .str+" and "); Sytem .out .print(ex .ch); } public void change(String str,char ch[]){ str="test ok"; ch[0]='g'; } } B 、 good and abc B 、 good and gbc C 、test ok and abc D 、 test ok and gbc 5.运行下列程序, 会产生什么结果 ( A )

JAVA程序设计期末考试题(多套含答案)

《JA V A程序设计》期末考试试题(五) 一、单选题 1、当某一线程正处于休眠状态,而另一个线程用Thread 类中的interrupt() 方法中断它时,抛出的异常类型是()。 A) IOException B) RuntimeException C) InterruptedException D) ClassNotFoundException 2、下面的程序段的功能是( )。 File file1=new File("d:\\xxx\\yyy\\zzz"); file1.mkdirs(); A)在当前目录下生成子目录:\xxx\yyy\zzz B)生成目录:e:\xxx\yyy\zzz C)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对 3、应用程序的main方法中有以下语句,则输出的结果是( )。 String s = "xxxxxxxxxxxxxxx#123#456#zzzzz"; int n = s.indexOf("#"); int k = s.indexOf("#", n+1); String s2 = s.substring(n+1, k); System.out.println(s2); A) 123456 B) 123 C) xxxxxxxxxxxxxxx D) zzzzz 4、关于下面的程序Test.java说法正确的是( )。 public class Test { String x="1"; int y; public static void main(String args[]) { int z=2; System.out.println(x+y+z); } } A)3 B)102 C) 12 D)程序有编译错误 5、应用程序的main方法中有以下语句,则输出的结果是( )。

JAVA期末考试复习题

《J A V A程序设计》练习题 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( B )。 A.java B. .class C.html D. .exe 2、设 x = 1 , y = 2 ,z = 3,则表达式 y+=z--/++x的值是( A )。 A. 3 B. 3.5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( C )。

A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为(A )。 A. static void method( ) B. public void method() C. final void method( ) D. abstract void method( ) 5、关于选择结构下列哪个说法正确?( B ) A.if语句和 else语句必须成对出现 B.if语句可以没有else语句对应

C.switch结构中每个case语句中必须用break语句D.switch结构中必须有default语句 6、while循环和do…while循环的区别是:(D ) A.没有区别,这两个结构任何情况下效果一样 B.while循环比do…while循环执行效率高 C.while循环是先循环后判断,所以循环体至少被执行一次D.do…while循环是先循环后判断,所以循环体至少被执行一次 7、关于 for循环和 while循环的说法哪个正确? ( B ) A.while循环先判断后执行,for循环先执行后判断。B.while循环判断条件一般是程序结果,for循环的判断条件一般是非程序结果 C.两种循环任何时候都不可以替换

Java期末考试试卷答案A

JAVA程序设计试卷库(第5套) 一、单选题(每小题 2 分,共 20 分) 1、Java Application源程序的主类是指包含有( A )方法的类。 A. main方法 B. toString方法 C. init方法 D. actionPerfromed方法 2、分析下面的程序段,下面的哪个描述是正确的。( B ) char mychar=’c’; switch(mychar){ default: case ‘a’“a”);break; case ‘b’“b”);break; } A.switch语句块是错误的, 因为switch后面的表达式 值的类型不是整数; B.switch语句块是正确的; C.switch语句块是错误的, 因为default没有放在语 句块的最后面; D.代码运行时,没有任何输出 结果。 3、编译并运行下面的Java程序, 将产生( B )结果。 class A{ int var1=1; int var2; public static void main(String[] args){ int var3=3; A a=new A(); } } A. 0 B. 4 C. 3 D. 代码无法编译,因为var2根本 没有被初始化 4、在Java中,下面关于包的陈述 中正确的是( D )。

A. 包的声明必须是源文件的任意位置; B. 包的声明必须紧跟在import 语句的后面; C. 只有公共类才能放在包中; D. 可以将多个源文件中的类放在同一个包中 5、 在Java 语言中,当一个类的某个变量声明为protected 时下列说法正确的是( C )。 A. 只有同一类中的成员才能访问它; B. 不同包中的任何其他类都能够访问它; C. 同包中的任何其他类能够访问它; D. 不同包中的子类不可以访问该变量。 6、在Java 中,执行下面的语句后,c 的值为( D )。 String s= "Jessica "; char c=s.charAt(6); A. "c " B. "a " C. 'c ' D. 'a ' 7、设有下面两个赋值语句: a = Integer.parseInt(“1024”); b = Integer.valueOf(“1024”).int Value(); 下述说法正确的是( D )。 A .a 是整数类型变量,b 是整数类对象。 B .a 是整数类对象,b 是整数类型变量。 C .a 和b 都是整数类对象并且它们的值相等。 D .a 和b 都是整数类型变量并且它们的值相等。 8、事件剪裁类如WindowAdapter (它实现了WindowListener 接

Java期末考试试卷1

信息学院2006—2007学年第二学期期末考试试题A 课程名称:Java 语言程序设计主讲:年级: 班级姓名学号 题号一二三四五合计 分数 一、选择(每题1分,共20分) 1.有一个名为MyClass的public类,想成功编译需满足以下哪个条件?() A. MyClass类中必须定义一个正确的main()方法。 B. MyClass必须定义在MyClass.java源文件中。 C. MyClass类必须定义在MyClass包中。 D. MyClass类必须被导入。 2.以下哪些修饰符不能用于顶层类?( ) A. public B. private C. abstract D. final 3.以下哪个是java中合法的关键字?( ) A. array B. Boolean C. protect D. super 4.以下哪些是合法的标识符?( ) A.%abcd B. 2abcd C. package D. _a_long_name 5.在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数的个数、类型或顺序各不相同。这种面向对象程序的特性称为. () A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 6.有以下代码,请问该程序的运行结果是什么?( ) class Example { public static void main(String args[]){ boolean b=true; System.out.println(b); } } A. 打印输出true B. 打印输出1 C.编译错误 D. 无内容输出 7.以下哪些是基本数据类型?( ) A.int B. String C. Integer D. Float 8. 给出以下代码,请选择正确的选项?( ) class Example{ public static void main(String[] args){ char a=”\u1234”; } } A. 代码编译成功 B. 代码编译成功,但有警告 C. 代码编译失败 9.以下哪个语句用于声明一个二维数组?( ) A. int[5][5] a=new int[][]; B. int a=new int[5,5] C. int[][] a=new int[5][5]; D. int[][] a=new [5]int[5]; 10.给出以下代码,请问该程序的运行结果是什么?()

java期末考试复习题及答案(1)

《Java程序设计》课程试卷 1.使用Java语言编写的源程序保存时的文件扩展名是( B )。 (A).class (B).java (C).cpp (D).txt 2.设int a=-2,则表达式a>>>3的值为( C )。 (A)0 (B)3 (C)8 (D)-1 3.设有数组的定义int[] a = new int[3],则下面对数组元素的引用错误的是( C )。 (A)a[0]; (B)a[]; (C)a[3]; (D)int i=1; a[i]; 4.在类的定义中可以有两个同名函数,这种现象称为函数( D )。 (A)封装(B)继承(C)覆盖(D)重载 5.在类的定义中构造函数的作用是( D )。 (A)保护成员变量(B)读取类的成员变量(C)描述类的特征(D)初始化成员变量 6.下面关键字中,哪一个不是用于异常处理语句( B )。 (A)try (B)break (C)catch (D)finally 7.类与对象的关系是( A )。 (A)类是对象的抽象(B)对象是类的抽象(C)对象是类的子类(D)类是对象的具体实例 8.下面哪一个是Java中不合法的标识符( D )。 (A)$persons (B)twoNum (C)_myVar (D)*point 9.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( A )。 (A)static void method( ) (B)public void method( ) (C)final void method( ) (D)abstract void method( ) 10.欲构造ArrayList类的一个实例,此类继承了List接口,下列哪个方法是正确的( C )。 (A)ArrayList myList=new Object( ) (B)List myList=new ArrayList( ) (C)ArrayList myList=new List( ) (D)List myList=new List( ) 源文件和编译后的文件扩展名分别为( B ) (A) .class和 .java (B).java和 .class (C).class和 .class (D) .java和 .java 12.在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方法来完成一些画图操作。 (A) start( ) (B) stop( ) (C) init( ) (D) paint( ) 13.对于一个Java源文件,import, class定义以及package正确的顺序是: ( A ) (A) package,import,class (B) class,import,package (C) import,package,class (D) package,class,import 14.下面哪个是非法的:( D ) (A) int I = 32; (B) float f = ; (C) double d = ; (D) char c = ‘u’;如果一个类的成员变量只能在所在类中使用,则该成员变量必须使用的修饰是( C ) (A) public (B) protected (C) private (D) static 17.下面关于main方法说明正确的是( B ) (A) public main(String args[ ]) (B) public static void main(String args[ ]) (C) private static void main(String args[ ]) (D) void main() 18.哪个关键字可以对对象加互斥锁( B ) (A) transient (B) synchronized (C) serialize (D) static 19.关于抽象方法的说法正确的是( D ) (A)可以有方法体 (B) 可以出现在非抽象类中 (C) 是没有方法体的方法(D) 抽象类中的方法都是抽象方法 包的File类是( B ) (A)字符流类(B) 字节流类 (C) 对象流类 (D) 非流类 21.Java application中的主类需包含main方法,以下哪项是main方法的正确形参( B ) A、 String args B、String args[] C、Char arg D、StringBuffer args[] 22.以下代码段执行后的输出结果为( A ) i nt x=-3; int y=-10; 、-1B、2 C、1 D、3 23.以下关于继承的叙述正确的是()。

Java期末考试题

2010年——2011年Java期末考试题 一、判断题。 1.Java语言是平台无关的语言。T 2.类的静态方法中可以访问该类的非静态数据成员.F 3.Java中方法调用时参数传递都是按值传递的,因此从方法中退出时,参数的值是不 会变的。T 4.覆盖方法所抛出的异常不能比原方法更多。T 5.Final 方法不能被覆盖。T 6.抽象类中一定包含抽象方法。F 7.接口中的方法必须是抽象方法。T 8.在方法定义中,所以可能发生的异常都必须用try{} catch(){}捕捉。F 9.Java支持多重继承。F 10.Final修饰的类不能派生子类。T 11.覆盖的同名方法中,子类方法不能比父类方法的访问权限更严格。T 12.不能在静态方法中使用this.T 13.抽象类中不能创建对象。T 14.一个类可以实现多接口。T 15.接口中可以包含非静态成员。F 16.不论是否捕捉到异常try{}catch(){} final{}语句中finally块中的代码总要被执行。T 17.一个类实现一个接口,则该类必须实现接口中的所有方法。F 18.线程使用sleep方法去休眠后可以使用notify方法唤醒。F 19.线程使用sleep方法休眠是会释放该线程同步锁定的对象。F 20.Final类中的属性和方法都必须是final的。F 二、选择题 1、Java中复合数据类型不包括(D) A.类类型 B.数组 C.接口类型 D.指针 2、请从四个选项中选择答案,下列代码的执行结果是:(C) Public class Test{ Public static void main(String args[]){ Float t=9.0f; Int q=6; System.out.println((t++)*(--q)); } } A.40 B.40.0 C.45.0 D.36.0 3、下列关于修饰符混用的说法,错误的是(D) A.abstract 不能与final 并列修饰同一个类 B.abstract类中可以有非abstract的方法 C.普通类(非abstract类)中不能有abstract方法 D.static方法中能处理非static的属性 4、关于被保护访问控制符protected修饰的成员变量,以下说法正确的是(A) A.可以被该类自身、与它在同一个包中的其它类、在其它包中的该类的子类所访问B.只能被该类本身和该类的所有的子类访问 C.只能被该类自身所访问 D.只能被同一个包中的类访问 5、x=2,y=3,z=4,则表达式z*=y++*--x的值是(A) A.12 B.24 C.16 D.3 6、以下赋值语句正确的是(D) A.char c1=”a” B.float f1=3.22 C.byte b1=266 D.long L1=0xAC8L 7、Java不支持多重继承,但我们可以通过(B)实现 A.多态 B.接口 C.覆盖 D.抽象类 8.已知类person是类student的父类,以下数组定义和赋值哪些是正确的(A) A. person p[]=new person[3]; p[1]=new student(); B .student s[]=new person[3]; s[1]=new person(); C .person p[]= new student[3];p[1]= new person(); D .student s[]=new student[3];s[1]=new person; 9 编译MyClass.java之后,得到了三个字节码文件:MyClass.class , MyClasslittle$.class MyClass$1.class.这表明(C) A.MyClass类中的两个方法:little和1 B. MyClass.Java中有三个类:MyClass、little和1 C. MyClass类中有两个内部类:一个是命名的little,另一个是匿名的1 D. MyClass、little和1,这三者没什么关系 10、main 方法是java Application 程序执行的入口点,关于main方法的方法头以下(B)是合法的。 A.public static void main() B.public static void main(String arg[]) C.public static int main(String[] arg) D. B.public void main(String arg[]) 11、当编译和运行下面的代码会出现什么情况?(A)

JAVA语言程序设计期末考试试题及答案

J A V A语言程序设计期末考试试题及答案 TTA standardization office【TTA 5AB- TTAK 08- TTA 2C】

J A V A语言程序设计考试试题及部分答案 一、单选题:(每题1分)下列各题A)、B)、C)、D)四个选项中,只有一个选项是正确的,请将正确选项的标记写在题干后的括号内。 1.下列语句序列执行后,k 的值是( B )。 int m=3, n=6, k=0; while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 2.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是( B )。 A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 3.Java语言的类间的继承关系是( B )。 A) 多重的 B) 单重的 C) 线程的 D) 不能继承 4.设有定义 int i = 6 ;,则执行以下语句后,i 的值为( C )。 i += i - 1; A) 10 B) 121 C) 11 D) 100 5.下列选项中,用于在定义子类时声明父类名的关键字是( C )。 A)interface B) package C) extends D) class 6.若已定义 byte[ ] x= {11,22,33,-66} ; 其中0≤k≤3,则对x数组元素错误的引用是( C )。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

7.下列语句序列执行后,ch1 的值是( B )。 char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B 8.下列语句序列执行后,i 的值是( D )。 int i=8, j=16; if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8 9.下列语句序列执行后,k 的值是( C )。 int i=10, j=18, k=30; switch( j - i ) { case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 10.下面语句执行后,i 的值是( B )。 for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7 11.设有定义 float x=, y=, z=;则以下的表达式中,值为true的是( B )。 A) x > y || x > z B) x != y

《JAVA语言程序设计》期末考试试题及答案

《JA V A语言程序设计》期末考试试题及答案 (应考必备题库) 一、单选择题 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A. java B. .class C. html D. .exe 2、设x = 1 , y = 2 , z = 3,则表达式y+=z--/++x 的值是( )。 A. 3 B. 3. 5 C. 4 D. 5 3、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 4、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。 2、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用2字节内存空间,这样,无论是中文字符还是英文字符,都是占 用2字节内存空间。 3、设x = 2 ,则表达式( x + + )/3 的值是0 。 4、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为true和false。 5、抽象(abstract) 方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法是不能被当前类的子类重新定义的方法。 6、创建一个名为MyPackage 的包的语句是package MyPackage ; , 该语句应该放在程序的位置为:应该在程序第一句。 7、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。

JAVA期末考试考卷及答案

《J A V A语言程序设计》期末考试模拟试题 一、单选择题(每小题2分,共10分) 1、编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展 名为( B )。 A. .java B. .class C. .html D. .exe 2、设 x = 1 , y = 2 , z = 3,则表达式 y+=z--/++x 的值是( A )。 A. 3 B. 3. 5 C. 4 D. 5 3、在Java Applet程序用户自定义的Applet子类中,一般需要重载父类的( D )方 法来完成一些画图操作。 A. start( ) B. stop( ) C. init( ) D. paint( ) 4、不允许作为类及类成员的访问控制符的是( C )。 A. public B. private C. static D. protected 5、为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为 前缀就可以调用它,该方法头的形式为( A )。 A. static void method( ) B. public void method( ) C. final void method( ) D. abstract void method( ) 二、填空题(每空格1分,共20分) 1、开发与运行Java程序需要经过的三个主要步骤为编辑源程序、 编译生成字节码和解释运行字节码。

MyApplet必须是 Applet 类的子类并且存储该源程序文件的文件名为MyApplet 。 3、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译 器编译该源程序文件将产生 3 个文件名与类名相同而扩展名为 . class 的字节码文件。 4、在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占 用 2 字节内存空间,这样,无论是中文字符还是英文字符,都是占 用 2 字节内存空间。 5、设 x = 2 ,则表达式 ( x + + )/3 的值是 1 。 6、若x = 5,y = 10,则x < y和x >= y的逻辑值分别为 true 和 false 。 7、抽象(abstract)方法方法是一种仅有方法头,没有具体方法体和操作实现的方法,该方法必须在抽象类之中定义。最终(final)方法方法是不能被当前类的子类重新定义的方法。 8、创建一个名为 MyPackage 的包的语句是 package MyPackag , 该语句应该放在程序的位置为:应该在程序第一句。 9、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是 120 。 int s = 0 ; for ( int i = 0 ; i < ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; 10、在Java程序中,通过类的定义只能实现单重继承,但通过接口的定义可以实现多重继承关系。

java期末考试试题(含答案)

模拟B卷 考试说明: 1.使用Eclipse编写程序。项目名称为:班级_姓名_学号_卷号。注意:卷号为A或B 2.在项目文件夹下新建一个文本文件,文件名为:答案.txt 3.将编程题外的所有题目写在文本文件中,答案要标明题号。 注意:考试期间遇到死机等问题,需要请示老师,切勿自行解决。否则后果自负。 一、单项选择题:共20题,每小题1分,满分20分 1、下列选项中,不属于Java语言特点的一项是。( D ) A、安全性 B、分布式 C、面向对象 D、编译执行 2、Java语言和c++语言相比,哪一项是Java有的,而c++没有?( C ) A、面向对象 B、有类库 C、跨平台 D、动态链接 3、如下哪个不是Java中有效的变量名。( A ) A、 if B、hello C、name D、good 4、下列不属于Java保留字的一个是( B )。 A、else B、Unicode C、if D、static 5、现有2个char,类型的变量al=’a’、a2=2,当执行al=(char)(al+a2);语句之后,al的值应 该是( C )。 A、’a’ B、12 C、’c’ D、语句在编译时出错 6、下列关于int类型和long类型的说法中,正确的一个是( A )。 A、int类型可以自动转换为long类型 B、long类型可以自动转换为int类型 C、long类型占的存储空间比int类型的小 D、long类型和int类型数据能表示整数的范围一样 7、下列类的定义中,错误的是( B )。 A、class y{ .... } B、public x extends y{ .... } C、public class x extends y{ .... } D、class x extends y implements y1{ .... } 8、执行语句int i = 1, j = ++i; 后i与j的值分别为( D )。 A、1与1 B、2与1 C、1与2 D、2与2 9、为了区分重载多态中同名的不同方法,要求( C )。 A、调用时用类名或对象名做前缀 B、返回值类型不同 C、形式参数个数或者类型不同 D、形式参数名称不同 10、定义类头时能使用的修饰符是( C )。 A、private B、static C、protected D、abstract 11、如果在编译Java程序时,编译结果报告说找不到要编译的代码,错误是( D )

JAVA期末考试试卷及答案

二.选择题; 1.以下哪个方法用于定义线程的执行体?( C ) A、 start() B、init() C、run() D、synchronized() 2.下面哪个不是Java中的容器? (B ) A、 ScrollPane B、Canvas C、Applet D、Dialog 3.下面哪个方法与applet的显示无关?(A ) A、draw() B、 update() C、repaint() D、paint() 4.当Frame改变大小时,放在其中的按钮大小不变,则使用如下哪种布局方式? (A) A、 FlowLayout B、CardLayout C、BorderLayout D、GridLayout 5.有如下代码段: 1) 2) { if(unsafe()){//do something…} 3) else if(safe()){//do the other…} 4) } 其中,方法unsafe() 将抛出IOException, 请问可将以下哪项填入第1行?(D ) A、public IOException methodName() B、public void methodName() C、public void methodName() throw IOException D、public void methodName() throws IOException 6.以下哪个关键字可以用来对对象加互斥锁?(B) A、transient B、synchronized C、serialize D、static 7.在使用interface声明一个接口时,只可以使用(D)修饰符修饰该接口。 A、private B、protected C、private protected D、public 8.编译并运行以下程序,以下描述哪个选项是正确的( C ) 1. class A{ 2. protected boolean equals(){ 3. return super.equals();} 4. } A、编译通过运行无异常 B、编译通过但运行时出错 C、行2出错,不能成功编译 D、不能成功编译,行3出错 9.Java的字符类型采用的是Unicode编码方案,每个Unicode码占用( B)个比特位。 A、8 B、16 C、32 D、64 10.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( D )语句。 A、import java.awt.* ; B、import java.applet.* ; C、import java.io.* ; D、import java.awt.event.* ; 11.以下关于构造函数的描述错误的是(A )。 A、构造函数的返回类型只能是void型。 B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。 C、构造函数的主要作用是完成对类的对象的初始化工作。 D、一般在创建新对象时,系统会自动调用构造函数。

java期末考试复习题及答案

《Java 程序设计》课程试卷 1 ?使用Java 语言编写的源程序保存时的文件扩展名是( (A .class ( B ) .java 2. 设 int a=-2 (A) 0 ,则表达式a>>>3的值为( (B ) 3 C )。 (C ) B )。 (C ) .cpp (D ) .txt 3. 设有数组的定义 in t[] a = new in t[3] (A ) a[0]; 4. 在类的定义中可以有两个同名函数,这种现象称为函数( (A )封装 (B )继承 (C )覆盖 5. 在类的定义中构造函数的作用是( (A )保护成员变量 (B) a[a.length-1]; 8 ( D ) ,则下面对数组元素的引用错误的是 (C ) a[3]; D )。 (B )读取类的成员变量 (C ) (D ) int i=1 )。 (D )重载 C )。 ;a[i]; 6. 下面关键字中,哪一个不是用于异常处理语句 (A ) try 7. 类与对象的关系是( (A )类是对象的抽象 &下面哪一个是 (A ) $persons (B ) break A )。 (B )对象是类的抽象 Java 中不合法的标识符 (B ) twoNum 描述类的特征 B )。 (C ) catch 对象是类的子类 (D )初始化成员变量 (D) fin ally (D ) 9. 为AB 类的一个无形式参数无返回值的方法 法头的形式为(A) 。 (A ) static void method() (C ) final void method() 10. 欲构造ArrayList 类的一个实例,此类继承了 (A ) ArrayList myList=new Object() (C ) ArrayList myList=new List() 11. Java 源文件和编译后的文件扩展名分别为( (A) .class (C).class 12. 在 Java (A) start() (C ) D ) (C ) method 书写方法头,使得使用类名 o _myVar (D ) 类是对象的具体实例 *poi nt AB 作为前缀就可以调用它, 禾口 .java ( 禾口 .class (D) .java Applet 程序用户自定义的 Applet 子类中, (B) stop( ) (C) init() (B ) public void method() (D ) abstract void method() List 接口,下列哪个方法是正确的( (B ) List myList=new ArrayList() (D ) List myList=new List() B ) B).java 禾口 .class 和 .java -般需要重载父类的 ( C )。 方法来完成一些画图操作 ( D paint() 定义以及package 正确的顺序是:( (B) class,import,package (C) 13. 对于一个 Java 源文件,import, class (A) package,import,class package,class,import 14. 下面哪个是非法的:(D ) (A) int I = 32; (B) float f = 45.0; //符号错 15. Java 语言使用的字符码集是(D ) (A) ASCII (B) BCD (C) DCB 16. 如果一个类的成员变量 只能在所在类中使用,则该成员变量必须使用的修饰是 (A) public (B) protected (C) private 17. 下面关于 main 方法说明正确的是(B ) A ) import,package,class (D) (C) double d = 45.0; (D) char c = (D) Uni code (C ) (D) static (A) public main( Stri ng args[ ]) (B) public static void main( Stri ng args[]) (C) private static void main( Stri ng args[ ]) (D) void main() 20.java.io 包的 File 类是(B ) (A)字符流类 (B)字节流类 (C) 对象流类 (D) 非流类 21. Java application 中的主类需包含 mai n 方法, 以下哪项是 main 方法的正确形参? (B ) A 、String args B String args[] C 、Char arg D StringBuffer args[] 22.以下代码段执行后的输出结果为( A ) 18. 哪个关键字可以对对象加互斥锁? ( B ) (A) tran sie nt ( B) synchroni zed (C) serialize (D) static 19. 关于抽象方法的说法正确的是 (D ) (A)可以有方法体 (B) 可以出现在非抽象类中 (C)是没有方法体的方法 (D)抽象类中的方法都是抽象方法

相关主题
文本预览
相关文档 最新文档