收藏 分销(赏)

JAVA期末考试试卷及答案.doc

上传人:精*** 文档编号:2394140 上传时间:2024-05-29 格式:DOC 页数:9 大小:102.50KB 下载积分:6 金币
下载 相关 举报
JAVA期末考试试卷及答案.doc_第1页
第1页 / 共9页
JAVA期末考试试卷及答案.doc_第2页
第2页 / 共9页


点击查看更多>>
资源描述
二.选择题; 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、一般在创建新对象时,系统会自动调用构造函数。 12.有程序如下,关于程序的描述哪个是正确的?( C ) public class Person{   static int arr[] = new int[10];   public static void main(String a[])   {   System.out.println(arr[1]);  } } A、编译将产生错误 B、编译时正确,但运行时将产生错误 C、正确,输出0 D、正确,输出 null 13.有语句String s=”hello world”; ,以下操作哪个是不合法的?( B ) A、int i=s.length(); B、s>>>=3; C、String ts=s.trim(); D、String t=s+”!”; 14.给出如下代码: class Test{   private int m;   public static void fun() {      // some code...    } } 如何使成员变量m 被函数fun()直接访问?( C ) A、将private int m 改为protected int m B、将private int m 改为 public int m C、将private int m 改为 static int m D、将private int m 改为 int m 15. Java application中的主类需包含main方法,main方法的返回类型是什么?( D ) A、int B、float C、double D、void 16.有以下方法的定义,请选择该方法的返回类型( D )。 ReturnType method(byte x, double y) { return (short)x/y*2; } A、byte B、short C、int D、double 17.下列哪些语句关于Java内存回收的说明是正确的? ( B ) A、程序员必须创建一个线程来释放内存 B、内存回收程序负责释放无用内存 C、内存回收程序允许程序员直接释放内存 D、内存回收程序可以在指定的时间释放内存对象 18.在编写Java Applet程序时,若需要对发生的事件作出响应和处理,一般需要在程序的开头写上( D )语句。 A、import java.awt.* ; B、import java.applet.* ; C、import java.io.* ; D、import java.awt.event.* ; 19.容器Panel和Applet缺省使用的布局编辑策略是( B ) A、BorderLayout B、FlowLayout C、GridLayout D、CardLayout 20.设有下面两个赋值语句: a = Integer.parseInt(“123”); b = Integer.valueOf(“123”).intValue(); 下述说法正确的是( D )。 A、a是整数类型变量,b是整数类对象。B、a是整数类对象,b是整数类型变量。 C、a和b都是整数类对象并且值相等。 D、a和b都是整数类型变量并且值相等。 21.编译并运行以下程序,以下描述哪个选项是正确的( C )。 1. class A{ 2. protected String toString(){ 3. return super.toString();} 4. } A、编译通过运行无异常 B、编译通过但运行时出错 C、行2出错,不能成功编译 D、不能成功编译,行3出错 22.有以下程序片段,下列哪个选项不能插入到行1。( D ) 1. 2.public class Interesting{ 3.//do sth 4. } A、import java.awt.*; B、package mypackage; C、class OtherClass{ } D、public class MyClass{ } 23.以下哪个不是Java的关键字?( A ) A、TRUE B、const C、super D、void 24.关于以下application的说明,正确的是( C )。 1. class StaticStuff 2. { 3. static int x; 4. static { x+=5;} 5. public static void main(String args[ ]) 6. { 7. System.out.println(“x=” + x); 8. } 9. static { x/=5;} 10.} A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为:x=1 D、能通过编译,但程序运行结果不可预知,因为变量x没有初始化 25.FilterOutputStream是BufferedOutputStream、DataOutputStream及PrintStream的父类,以下哪个类可能是FilterOutputStream构造函数的参数类型?(B A、OutputStream B、File C、InputStream D、BufferedOutputStream 26.在使用interface声明一个接口时,只可以使用(D )修饰符修饰该接口。 A、private B、protected C、private protected D、public 27.有程序片段如下,以下哪个表示式的结果为true?( B ) Float s=new Float(0.1f); Float t=new Float(0.1f); Double u=new Double(0.1); A、s==t B、s.equals(t) C、u.equals(s) D、t.equals(u) 三.程序阅读题 1.写出以下程序的运行结果。(54321) public class TestArray { public static void main(String args[ ]){ 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<a.length; i++ ) System.out.print(a[i]+" "); System.out.println( ); } } 2.写出以下程序的功能。(在屏幕上输出test.java文件的内容) import java.io.*; class FileIODemo{ public static void main(String[ ] args) throws IOException{ int b; FileInputStream fileIn=new FileInputStream(“test.java”); while((b=fileIn.read())!=-1){ System.out.print((char)b); } } } 3. 写出以下程序的运行结果。Str0str1str2 str0str2 import java.util.*; public class Vec{ public static void main(String[] args) { String[] s; s=new String[2]; s[0]=new String("str1"); s[1]=new String("str2"); Vector v = new Vector(); for(int i = 0; i <2; i++) v.addElement(s[i]); v.insertElementAt(new String("str0"),0); Enumeration e = v.elements(); while(e.hasMoreElements()) System.out.print(e.nextElement()+" "); System.out.println(); v.removeElement("str1" ); for(int i = 0; i < v.size() ; i++) System.out.print(v.elementAt(i) +" "); System.out.println(); } } 4.写出以下程序的运行结果。int class OverloadDemo{ 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.阅读以下程序,写出输出结果。inSecondclass class First{ public First(){ aMethod(); } public void aMethod(){ System.out.println(“in First class”);} } public class Second extends First{ public void aMethod(){ 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("x=" + x); System.out.println("st.y=" + st.y); st=new StaticTest(); System.out.println("st.y=" + st.y); } 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<s.length();i++) { c=s.charAt(i); if(c>='a' && c<='z'){ s1=s1+Character.toUpperCase(c); }else{ s1=s1+Character.toLowerCase(c); } } System.out.println(s1); } } 若在dos命令行输入:java Exp1 cHINA,则输出为 JAVA eXP1 China 。 8.阅读以下程序: import java.io.*;public class AboutFile{ public static void main(String[ ] args){ BufferedReader b=new BufferedReader (new InputStreamReader(System.in)); String s; System.out.flush(); s=b.readLine(); System.out.println(“String is:”+s); } } 运行以上程序,若从键盘输入: java<回车> 则输出结果为 String is: java 。 9.阅读以下程序,写出输出结果。 class Animal { Animal() { System.out.print ("Animal "); } } public class Cat extends Animal { Cat() { System.out.print ("Cat "); } public static void main(String[] args) { Cat kitty= new Cat(); } } Animal Cat 10.以下程序段的输出结果为 int,int 。 class Cruncher{ void crunch( int i ){ System.out.print(“int”); } void crunch(String s){ System.out.print(“String”); } public static void main(String args[ ]){ Cruncher crun=new Cruncher ( ); char ch=’h’; int i=12; crun.crunch(ch); System.out.print(“,”); crun.crunch(i); } } 11.阅读以下程序,输出结果为 cooljava 。 import java.io.*; public class TestString { public static void main(String args[ ]) { StringC s = new StringC ("cool","java"); System.out.println(s); } } class StringC { String s1; String s2; StringC( String str1 , String str2 ) { s1 = str1; s2 = str2; } public String toString( ) { return s1+s2;} } 12. 以下程序段的输出结果为 1 v0 v1 1 vo 。 import java.util.*; public class VecApp { public static void main(String[] args) { Vector v = new Vector(); for(int i = 0; i <2; i++) v.addElement("v"+i); v.insertElementAt(new Integer(1),0); Enumeration e = v.elements(); while(e.hasMoreElements()) System.out.print(e.nextElement()+" "); System.out.println(); v.removeElement("v1" ); for(int i = 0; i < v.size() ; i++) System.out.print(v.elementAt(i) +" "); System.out.println(); } } 四.编程题 1.编写一个输出"Welcome to Java World!"的Applet程序和嵌入该Applet的HTML页面。 ① // Welcome.java ②//Welcome.html <html> </html> import java.applet.*; import java.awt.*; public class Welcome extends Applet { public static String str=null; public void init() { str="Welcome to Java World !"; }; public void paint(Graphics g) { g.drawString(str, 10, 50); }; } 编写一个完整的JavaApplication程序。包含接口ShapeArea,类Circle、Rectangle、Test,具体要求如下: ⑴接口ShapeArea: ①接口方法 doublegetArea():求一个形状的面积 doublegetPerimeter():求一个形状的周长 ⑵类Rectangle: 实现ShapeArea接口,并有以下属性和方法: ① 属性 width:double型,表示长方形的宽度 height:double型,表示长方形的长度 ② 方法 Rectangle(doublew,doubleh):构造函数 toString():输出矩形的描述信息,如“width=1.0,height=2.0,perimeter=6.0,area=2.0” ⑶Test类作为主类要完成测试功能 ① 生成Rectangle对象 ②调用对象的toString方法,输出对象的描述信息 publicclassTest{//主类定义2分 publicstaticvoidmain(Stringargs[]) { Rectangler=newRectangle(1,2); System.out.println(r.toString()); } } interfaceShapeArea//接口定义2分 { publicabstractdoublegetPerimeter(); publicabstractdoublegetArea(); } classRectangleimplementsShapeArea{ doublewidth,height;//属性定义1分 Rectangle(doublew,doubleh) //构造函数定义1分 { width=w;height=h; } publicdoublegetPerimeter()//1分 {return2*(width+height);} publicdoublegetArea()//1分 {returnwidth*height;} publicStringtoString()//2分 { return"width="+width+",height="+height+ ",perimeter="+getPerimeter()+",area="+getArea(); } } Welcome To Download !!! 欢迎您的下载,资料仅供参考! 第 9 页 共 9 页
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服