当前位置:文档之家› Java期末考试试卷答案A

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 voidmain(String[] args){int var3=3;A a=new A();}}A. 0B. 4C. 3D. 代码无法编译,因为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 接口)的优点是什么?( C )。

A. 继承了那个类的所有行为;B. 子类自动成为监听器;C. 没有必要实现不使用的任何WindowListener接口中定义的方法;D.可以自动充当事件的监听者。

9、在用Java构建动画时,(C )方法创建新线程并启动它运行。

A. init()B. start()C. run()D. paint()10、下面哪一个选项能正确地创建一个InputStreamReader对象( A )。

A.newInputStreamReader(newFileInputStream(“data”))B.newInputStreamReader(newFileReader(“data”))C.newInputStreamReader(newBufferedReader(“data”))D.newInputStreamReader(“data”)二、填空题(每空格1分,共15分)1、阅读下面的程序片段,在①中,parent类与child类之间是继承关系;在②中,parent类与child类之间包含。

①class parent{int fields;}class child extends②parent{int fieldChild; } child myChild; }2、Java中的多态有两种方式:子类对父类方法的覆盖、同类中方法的重载。

3、下面程的输出结果是: ?吗对,上海自来水来自海上public class turnString {public static void main(String args[]) {String s=“上海自来水来自海上,对吗?”;for(inti=s.length( )-1;i>=0;i++)}}4、Applet的 init( ) 方法仅在开始时执行一次? start( )方法在用户每次访问包含Applet 的HTML文件时都被调用?5、创建一个FlowLayout的对象fd,使应用该布局管理器的各个组件都向右对齐排列。

该对象的创建语句为: FlowLayout fd=new FlowLayout(FlowLayout.RIGHT);。

6、包中定义的两个类Socket 、 ServerSocket; 分别用来实现双向连接的Client和Server端。

7、巳知a=14,b=3,则表达式a<<b 运算结果为: 112; 。

8、写出运行下面程序片段后的屏幕输出: 0 1 2 i=3 。

int i;for(i=0;i<5;i++){if(i==3)break;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(newInteger(i)); )import java.util.*;public class UseVector{public static void main(String args[]){Vector myv=new Vector( );for(inti=0;i<10;i++)myv.addElement(i);}}9、在Applet中显示一幅图像,首先要把它调入内存,保存在一个Image对象中,然后调用drawImage()方法画出这个图像。

(√)10、挂起、阻塞或等待的线程都能够恢复运行,但是停止运行的线程将不可能再运行(√)。

四、问答题(每小题10分,共30分)1、阅读下面的程序片段,并回答问题。

①Class1被称为是Class2的什么?Class2被称为是Class1的什么?②Class1有哪些属性和方法?Class2有哪些属性和方法?其中哪些与Class1的属性和方法有关?1、 阅读下面的程序片段,并回答问题。

2、写出下列程序完成的功能误,请将错误的地方指出来,并改正答:接口中的方法都是public ,所以重载方法也必须声明为public.class Child extends Parend{public voidmethod1(){“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(inti=0;i<y.size() ;i++)x.addElement(y.elementAt(i) ) ;}int getmax(){ max=((Integer)(x.elementAt( 0))).intValue() ;for(inti=1;i<x.size();i++)if(max<((Integer)(x.elementAt (i))).intValue())max=((Integer)(x.elementAt(i) )).intValue();return max;}int getmin(){ min=((Integer)(x.elemen tAt(0))).intValue() ;for(inti=1;i<x.size();i++)if(min>((Integer)(x.elementAt (i))).intValue())min=((Integer)(x.elementAt(i) )).intValue();return min;}}。

相关主题