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‟: System.out.println(“a”);break; case „b‟: System.out.println(“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();

System.out.println(a.var1+a.var2+var3); } }

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=

char c=s.charAt(6);

A.

a = Integer.parseInt(“1024”);

b = Integer.valueOf(“1024”).intValue(); 下述说法正确的是( D )。

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

C.a和b都是整数类对象并且它们的值相等。

D.a和b都是整数类型变量并且它们的值相等。

8、事件剪裁类如WindowAdapter(它实现了WindowListener接口)的优点是什么? ( C )。

A. 继承了那个类的所有行为 ;

B. 子类自动成为监听器;

C. 没有必要实现不使用的任何WindowListener接口中定义的方法; D.可以自动充当事件的监听者。 9、在用Java构建动画时,(C )方法创建新线程并启动它运行。 A. init() B. start()

C. run() D. paint()

10、下面哪一个选项能正确地创建一个InputStreamReader对象( A )。

A.new InputStreamReader(new FileInputStream(“data”)) B.new InputStreamReader(new FileReader(“data”)) C.new InputStreamReader(new BufferedReader(“data”))

D.new InputStreamReader(“data”) 二、填空题(每空格1分,共15分)

1、阅读下面的程序片段,在①中,parent类与child类之间是 继承 关系;在②中,parent类与child类之间 包含 。

① class parent{

② class child{

int fields; int fieldsChild; }

}

class child extends parent{ class parent { int fieldChild; child myChild; }

}

2、Java中的多态有两种方式: 子类对父类方法的覆盖 、 同类中方法的重载 。 3、下面程的输出结果是: ?吗对,上海自来水来自海上 public class turnString {

public static void main(String args[]) {

String s=“上海自来水来自海上,对吗?” ; for(int i=s.length( )-1;i>=0;i++) System.out.println(s.charAt(i)); System.out.println(): }

}

4、Applet的 init( ) 方法仅在开始时执行一次? start( ) 方法在用户每次访问包含Applet的HTML文件时都被调用?

5、创建一个FlowLayout的对象fd,使应用该布局管理器的各个组件都向右对齐排列。该对象的创建语句为: FlowLayout fd=new FlowLayout(FlowLayout.RIGHT); 。 6、java.net包中定义的两个类 Socket 、 ServerSocket; 分别用来实现双向连接的Client和Server端。

7、巳知a=14,b=3,则表达式a

int i;

for(i=0;i

if(i==3) break;

System.out.print(i+” ”); }

System.out.println(“i=”+i) 9、在Java Application程序中,一个类是主类的标志是main( )方法在Java Applet程序中,一个类是主类的标志是 该类是Applet类的子类; 。 10、多态的概念是 一个程序中同名的不同方法共存的情况。 。

三、判断改错题(每题2分,共20分)(正确的打√,错误的打×并说明原因)

1、 Java系统包提供了很多预定义类,我们可以直接引用它们而不必从头开始编写程序。

(√ ) 2、 程序可以用字符‘*’替代一个TextField中的每个字符的显示,使别人看不出其中的具体内容。( √) 3、 Class1类的属性被private修饰符修饰为私有变量,所以方法不能访问它。(×,Class1类自身的方法可以访问这个私有变量。 ) 4、 如果p是父类Parent的对象,而c是子类Child的对象,则语句c=p是正确的。(×,

如果p实际代表的是一个子类对象的引用,可以用强制类型转换成c=(Child)p;否则不能把父类对象赋值给子类对象。 )

5、 如果希望程序能够处理所有的异常,包括未知的异常,可以在所有的catch块后面加下catch(Exception e){}。(√ ) 6、 TextComponent是一个抽象类,它的两个子类TextField和TextArea才拥有具体的对象。( √)

7、 一个Applet程序在运行过程中,创建的Frame窗框,当Applet或浏览器关闭时也会自

动跟着关闭。(×,Frame与Applet平级,不受Applet的关闭的影响。 ) 8、 判断下面程序片段的正确性。(×,Vector对象的addElement( )方法的参数类型为对象,

所以myv.addElement(i)应改为所以myv.addElement(new Integer(i)); ) import java.util.*; public class UseVector{

public static void main(String args[]) {

Vector myv=new Vector( ); for(int i=0;i

9、 在Applet中显示一幅图像,首先要把它调入内存,保存在一个Image对象中,然后调用drawImage()方法画出这个图像。(√)

10、挂起、阻塞或等待的线程都能够恢复运行,但是停止运行的线程将不可能再运行(√)。 四、问答题(每小题10分,共30分)

1、 阅读下面的程序片段,并回答问题。

① Class1被称为是Class2的什么?Class2被称为是Class1的什么?

② Class1有哪些属性和方法?Class2有哪些属性和方法?其中哪些与Class1的属性和方

法有关?

1① Class1被称为是Class2的什么?Class2被称为是Class1的什么?

答:Class1被称为Class2的父类,Class2被称为是Class1的子类。

② Class1有哪些属性和方法?Class2有哪些属性和方法?其中哪些与Class1的属性和方法有关?

答:Class1包括属性field1和field2,方法method1和method2;Class2包括自身定义的属性fieldChild1和自身定义的方法methodChild1,以及它从父类继承来的属性field1和方法method1、method2。

2、写出下面程序的功能

2、写出下列程序完成的功能

答:功能:从图形界面输入一个整数和一个浮点数,然后将其输出来。

3、 说明下面程序段是否有误,如有误,请将错误的地方指出来,并改正

3、说明下面程序是否有误,如有误,请将错误的地方指出来,并改正 答:接口中的方法都是public ,所以重载方法也必须声明为public.

class Child extends Parend {

public void method1() {

System.out.println(“I am implemented now!”); } }

五、用Java语言编写程序。(共15分)

假设用户输入一组整数被保存在Vector对象中,请定义一个类vecSort,用来求Vector对象中整数中的最大和最小数据。 要求:

1、 根据题目给出vecSort类应包含的属性和方法(5分)

2、 用Java语言定义类vecSort(10分) 五、用Java语言编写程序。(共15分) 参考代码:

class vecSort{ int max,min;

Vector x=new Vector(); vecSort(Vector y) {

for(int i=0;i

x.addElement(y.elementAt(i) ); }

int getmax()

{ max=((Integer)(x.elementAt(0))).intValue() ; for(int i=1;i

if(max

int getmin()

{ min=((Integer)(x.elementAt(0))).intValue() ; for(int i=1;i

if(min>((Integer)(x.elementAt(i))).intValue()) min=((Integer)(x.elementAt(i))).intValue(); return min; } }


© 2024 实用范文网 | 联系我们: webmaster# 6400.net.cn