学——学年第学期《Java程序设计》课程试题课程号:√考试□A卷√闭卷□考查□B卷□开卷题号一二三四五六七八九十总分阅卷教师各题分数4020105520100实得分数一、单项选择题(20题;每题2分,共40分)1、如果x=4,y=2,则z=x&y值是。A)z=0B)z=1C)z=2D)z=4答案A难度系数B知识点:逻辑表达式运算2、接口中定义的数据成员是。A)整型数据B)字符型数据C)常量型数据D)任何数据答案C难度系数B知识点:接口,数据成员3、Java语言具有许多优点和特点,_______反映了Java程序并行机制的特点。A)安全性B)多线性C)跨平台D)可移植答案:B;难度系数:C;知识点:java特性。4、_______的类声明是正确的。A)abstractfinalclassHI{•••}B)abstractprivatemove(){•••}C)protectedprivatenumber;D)publicabstractclassCar{•••}答案:D;难度系数:B;知识点:语法基础。5、Character流与Byte流的区别是_______。A)每次读入的字节数不同B)前者带有缓冲,后者没有C)前者是块读写,后者是字节读写班级:姓名:学号:试题共页加白纸张密封线D)二者没有区别,可以互换使用答案:C;难度系数:B;知识点:文件IO。6、Java语言中,_________是Japplet的默认布局管理器。A)BoederLayoutB)FlowLayoutC)GridLayoutD)CardLayout答案:A(难度系数C)知识点:GUI编程7、下列语句正确的是________。A)inta={1,2,3}B)intb=(1,2,3);C)intc[]={1,2,3}D)int[]d={123}答案:C(难度系数C)知识点:数组8、当需要在文件中写入字符而不是字节时,最好选用的类是_______。A)java..io.RandomAccessFileB)java..io.PrintwriterC)java..io.PrintStreamD)java..io.PrintOutputWriter答案:B(难度系数B)知识点:GUI编程9、_________事件监听器可以处理在文本框中输入回车键的事件A)ItemListenerB)ActionListenerC)MotionListenerD)AdjustListener答案:B(难度系数B)知识点:事件处理10、下列陈述正确的是_________。A)一个组件只能发生一种事件B)一个监听器处理一种事件C)多个事件监听器被注册到一个组件会引起编译错误D)如果多个事件监听器被注册到一个组件上,这些事件监听器一般都会起作用,但各个事件的处理顺序不确定答案:D(难度系数A)知识点:事件处理11、以下描述正确的是___。A)JAVA不可以用来开发手机程序B)在JAVA程序中java.awt包是唯一自动引入的类库C)java.io包是JAVA语言的输入输出类库D)JAVA的包中可以有相同的类名答案:C(难度系数B)知识点:JAVA简介,包12、以下关于数组的描述有误的是____。A)整型数组中的各元素的值必须是整型B)数组是有序数据的集合C)如数组名为ab,即ab.length可以取得该数组的长度D)数组的下标从1开始答案:D(难度系数B)知识点:数组13、下面各类对象不能接受用户输入的是。A)TextFieldB)JTextFieldC)JTextareaD)Jlable答案D难度系数C知识点:常用组件,可视化14、paint()方法使用_____类型的参数。A)GraphicsB)Graphics2DC)StringD)Color答案:A(难度系数B,知识点:applet)15、有如下程序段if(x0){System.out.println(first);}elseif(x-4){System.out.println(second);}else{System.out.println(third);}x的取值在______范围内时,将打印出字符串second.A)x0B)x-4C)x=-4D)x=0&&x-4答案:D(难度系数C,知识点:JAVA语言基本程序设计)16、下列关于修饰符混用的说法,错误的是___。A)abstract不能与final并列修饰同一个类B)abstract类中不可以有private的成员C)abstract方法必须在abstract类中D)static方法中能处理非static的属性答案:D难度系数:A知识点:关键字17、下面___函数是publicvoidaMethod(){...}的重载函数。A)voidaMethod(){...}B)publicintaMethod(){...}C)publicvoidaMethod(){...}D)publicintaMethod(intm){...}答案:D(难度系数A,知识点:重载)18、Strings1=newString(“Hello”);Strings2=newString(“there”);Strings3=newString();上面是Java程序中的一些声明,选项中能通过编译的是______。A)s3=s1+s2B)s3=s1&s2C)s3=s1||s2D)s3=s1&&s2答案:A(难度系数C,知识点:字符串)19、在JAVA编程中,基于线程的多任务处理环境中,执行特定任务的可执行代码的最小单位是_______。A)进程B)线程C)应用程序D)服务答案:B(难度系数A,知识点:线程)20、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的_____方法来完成一些画图操作。A)start()B)stop()C)init()D)paint()答案:D(难度系数A,知识点:APPLET)二、填空题(10题;每题2分,共20分)1根据程序的构成和运行环境的不同,Java源程序分为两类:程序和程序。答案:应用程序小应用程序(难度系数C)知识点:JAVA简介2在Java程序中,通过类的定义只能实现重继承,但通过接口的定义可以实现____重继承关系。答案:单、多(难度系数B)知识点:类的继承3、构造方法只能通过运算符调用,用户不能直接调用。答案:new(难度系数B)知识点:构造方法4、Applet的生命周期是有init()、start()、stop()、destroy()这4个方法构成的,在程序执行过程中,方法只被调用执行一次,但start()方法可以多次被调用执行。答案:init()(难度系数B)知识点:小应用程序5、读写器是以___________为基本单位访问文件的,读写器之外的其他输入流、输出流以及随机访问文件都是以___________为基本单位访问文件的。答案:字符、字节(难度系数C)知识点:文件与数据流6、在定义类时,指明类成员的权限修饰符有、和。答案publicprotectedprivate难度系数B知识点:类的定义7、在java.net中提供了两个类:和,分别用来用于客户端和服务器端的Socket通信。答案SocketServerSocket难度系数B知识点:网络基本类8用来定义一个类指定继承父类的关键字是,用来指定接口的继承的关键字是。答案:extends、implements;难度系数:C;知识点:语法基础。9字符串分为两大类,一类是字符串常量,使用类的对象表示;另一类是字符串变量,使用类的对象表示。答案:String、StringBuffer;难度系数:B;知识点:变量类型。10Java使用类及其子类的对象来表示线程。答案:Thread难度系数C知识点:线程三、判断题(10题;每题1分,共10分)1.()所有的文件输入/输出流都继承于InputStream/OutputStream类。答案:对(难度系数B)知识点:数据流2.()一个方法最多能有一个return语句。答案:错(难度系数B)知识点:类的方法3.()一个异常处理中finally语句块只能有一个或者可以没有。答案:对(难度系数B)知识点:异常4.()Java是区分大小写的语言,关键字的大小写不能搞错,如果把类class写成Class或者CLASS,都是错误的。答案:对(难度系数B)知识点:关键字5.()JAVA语言对内存的释放是采用垃圾自动回收机制。JAVA虚拟机自动判断并收集“垃圾”,但一般不立即释放它们的存储空间。答案:对(难度系数B)知识点:内存回收6.()abstract和final不能同时修饰同一个类。答案对难度系数C知识点:类的定义,修饰7.()java程序是由若干个类定义组成的。答案对难度系数C知识点:程序结构8.()Java源程序编写好之后,以文件的形式保存在硬盘或U盘上,源文件的名字可以随便取的,它不一定与程序的主类名一致。答案:错(难度系数B)知识点:JAVA简介9.()线程使用sleep()方法休眠后,可以用notify()方法唤醒。答案:错(难度系数B)知识点:多线程10.()Java源文件中最多只能有一个private类,其他类的个数不限。答案:错;难度系数:C;知识点:编程基础。四、程序填空题(1题;每题5分,共5分)1.在空缺处填入正确的语句classillegeEextendsException{publicStringgetMessage(){returnErrorinthevaluessuppliedtothe;}}classUser{intval1;(1);publicUser(inta,intb){val1=a;val2=b;}voidshow()(2){if((val10)||(val20))thrownewillegeE();System.out.println(Value1=+val1);System.out.println(value2=+val2);}}classthrowDemo{publicstaticvoidmain(Stringargs[]){Uservalues=newUser(-1,1);try{values.show();}(3){System.out.println(illege:+e.getMessage());}}}(难度系数B,知识点:异常处理)答案:(1)intval2(2)throwsillegeE(3)catch(illegeEe)五、读程序写结果(1题;每题5分,共5分)1.写出下列程序在控制台窗口中的输出结果。publicclassJ_Test{publicstaticvoidmb_method(StringBufferx,StringBuffery){x.append(y);y=x;}publicstaticvoidmain(Stringargs[]){StringBuffera=newStringBuffer(“A”);StringBufferb=newStringBuffer(“B”);mb_method(a,b);System.out.println(a+”,”+b);}}程序运行结果是:(难度系数B)答案:AB,B知识点:字符串六、编程题(2题;每题10分,共20分)1编写程序求出10个整数的最大值和最小值、平均值。(难度系数B,基本程序设计)publicclasscomputer{inta[8]={6,10,3,17,20,19,5,27,2,30};inti,sum=0,max=0,min=0,avg=0;for(i=0;i=7;i++){sum=sum+a[i];if(maxa[i])max=a[i];if(mina[i])min=a[i];}avg=sum/8;System.out.println(“最大值=”+max);System.out.println(“最小值=”+min);System.out.println(“平均值=”+avg);}2、编写