大学——学年第学期《Java程序设计》课程试题课程号:√考试□A卷√闭卷□考查□B卷□开卷题号一二三四五六七八九十总分阅卷教师各题分数4020105520100实得分数一、单项选择题(20题;每题2分,共40分)1、Java语言具有许多的优点和特点,下列的选项___反映了Java程序并行机制的特点。A)安全性B)多线程C)跨平台D)可移植答案:B知识点:java基础难度系数C2、下列关于JAVA语言特点的叙述中,错误的是____。A)Java是面向过程的编程语言B)Java支持分布式计算C)Java是跨平台的编程语言D)Java支持多线程答案:A知识点:java基础难度系数C3、定义私有的成员函数或成员变量,正确的是____。A)不需要定义,缺省的访问级就是私有级B)在类的开头部分集中定义C)成员函数需要定义,而成员变量不需要定义D)利用private关键字定义答案:D知识点:类成员难度系数C4、下列语句正确的是________。A)inta={1,2,3}B)intb=(1,2,3);C)intc[]={1,2,3}D)int[]d={123}(难度系数C)答案:C知识点:数组班级:姓名:学号:试题共页加白纸张密封线5、在编写异常处理的Java程序中,每个catch语句块都应该与___语句块对应,使得用该语句块来启动Java的异常处理机制。A)if–elseB)switchC)tryD)throw(难度系数B)答案:C知识点:异常6、下列表述中,不正确的是___。A)标识符区分大小写B)改变变量的值不会改变其存储位置C)常量可以完全大写D)单精度变量赋值常数后面的字母“f”可以省略答案:D知识点:变量难度系数C7、下列陈述正确的是_________。A)一个组件只能发生一种事件B)一个监听器处理一种事件C)多个事件监听器被注册到一个组件会引起编译错误D)如果多个事件监听器被注册到一个组件上,这些事件监听器一般都会起作用,但各个事件的处理顺序不确定(难度系数A)答案:D知识点:事件处理8、________属于容器的构件。A)JFrameB)JButtonC)JPnelD)JApplet答案:A;难度:C;知识点:窗体与控件。9、如果希望所有的控件在界面上均匀排列,应使用_____布局管理器。A)BoxLayoutB)GridLayoutC)BorderLayoutD)FlowLouLayout答案:B;难度:B;知识点:窗体与控件。10、下列关于构造方法的叙述中,错误的是____。A)Java语言规定构造方法名与类名必须相同B)Java语言规定构造方法没有返回值,但不用void声明C)Java语言规定构造方法不可以重载D)Java语言规定构造方法只能通过new自动调用答案:C知识点:类难度系数C11、在Java中,______负责对字节代码解释执行。A)垃圾回收器B)虚拟机C)编译器D)多线程机制答案:B;难度:C;知识点:java特性。12、_______属于合法的Java标识符。A)catB)5booksC)+staticD)-3.14159答案:A;难度:C;知识点:语法基础。13、在Java中,_______表示换行符的转义字符。A)\nB)\fC)'n'D)\dd答案:A;难度:C;知识点:语法基础。14、在Java中,所有类的根类是________。A)java.lang.ObjectB)java.lang.ClassC)java.applet.AppletD)java.awt.Fram答案:A;难度:C;知识点:编程基础。15、_________事件监听器可以处理在文本框中输入回车键的事件A)ItemListenerB)ActionListenerC)MotionListenerD)AdjustListener(难度系数B)答案:B知识点:事件处理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){...}(难度系数A,重载)D18、Strings1=newString(“Hello”);Strings2=newString(“there”);Strings3=newString();上面是Java程序中的一些声明,选项中能通过编译的是______。A)s3=s1+s2B)s3=s1&s2C)s3=s1||s2D)s3=s1&&s2(难度系数C,字符串)答案:A19、在JAVA编程中,基于线程的多任务处理环境中,执行特定任务的可执行代码的最小单位是_______。A)进程B)线程C)应用程序D)服务(难度系数A,线程)答案:B20、在JavaApplet程序用户自定义的Applet子类中,一般需要重载父类的_____方法来完成一些画图操作。A)start()B)stop()C)init()D)paint()(难度系数A,APPLET)答案:D二、填空题(10题;每题2分,共20分)1、Java应用程序总是从主类的方法开始执行。知识点:类概念难度系数C答案main2、在Java中若定义抽象类则需要加关键字来修饰。答案:abstract;难度:C;知识点:编程基础。3、在子类中定义与父的相同的方法,若在多个子类中定义相同的方法,则可以调用不同子类中的相同方法而实现不同的功能,这实现了程序运行时的。答案:多态;难度:C;知识点:面向对象基础。4、用来定义一个类指定继承父类的关键字是,用来指定接口的继承的关键字是。答案:extends、implements;难度:C;知识点:语法基础。5、java提供的两种多态机制是和。.答案重载、覆盖难度(B)知识点:多态机制6、在Java程序运行时,系统自动通过System类创建三个静态的I/O对象,它们是标准输入流对象、标准输出流对象、和标准错误流对象。答案:InputStream、OutputStream、ErrorStream;难度:C;知识点:文件IO。7、根据程序的构成和运行环境的不同,Java源程序分为两大类:_______程序和程序。答案:应用(Application)、小程序(Applet);难度:C;知识点:java特性。8、在Java程序中,通过类的定义只能实现重继承,但通过接口的定义可以实现重继承关系。答案:单、多;难度:B;知识点:java特性。9、字符串分为两大类,一类是字符串常量,使用类的对象表示;另一类是字符串变量,使用类的对象表示。答案:String、StringBuffer;难度:B;知识点:变量类型。10、在定义类时,指明类成员的权限修饰符有、和。答案publicprotectedprivate难度B知识点:类的定义三、判断题(10题;每题1分,共10分)1.()Java语言属于高级程序设计语言。答案:对知识点:java基础难度系数C2.()字符串\'a\'的长度是5。答案:错;难度:B;知识点:语法基础3.()在异常处理中总是将可能产生异常的语句放在try块中,用catch子句去处理异常,而且一个try块之后只能对应一个catch语句。答案:错难度系数:B知识点:异常处理4.()Java是区分大小写的语言,关键字的大小写不能搞错,如果把类class写成Class或者CLASS,都是错误的。(难度系数B)答案:对知识点:关键字5.()JAVA语言对内存的释放是采用垃圾自动回收机制。JAVA虚拟机自动判断并收集“垃圾”,但一般不立即释放它们的存储空间。(难度系数B)答案:对知识点:内存回收6.()abstract和final不能同时修饰同一个类。答案对难度C知识点:类的定义,修饰7.()访问类的成员,必须以类的对象为前缀。答案错难度C知识点:类的封装,访问8.()诊断和改正程序中错误的工作通常称为程序执行。答案:错;难度:C;知识点:编程基础。9.()即使一个类中未显式定义构造函数,也会有一个缺省的构造函数,缺省的构造函数是无参的,函数体为空。答案:对难度系数:C知识点:构造函数10.()用Javac编译Java源文件后得到代码叫字节码。(难度系数B)答案:错知识点:JAVA简介四、程序填空题(1题;每题5分,共5分)1.下面程序是定义一个Student类,在空白处填入适当语句补充完整。classstudent{Stringname;intage;(1);//定义一个整型属性chinese(2);//定义一个整型属性mathintenglish;inttotal(){(3);//返回chinese、math和english3个整型属性的总和。}}难度系数C知识点:JAVA类与对象答案:(1)intchinese(2)intmath(3)returnchinese+math+English五、读程序写结果(1题;每题5分,共5分)1.写出下列程序在控制台窗口中的输出结果。publicclassTestArray{publicstaticvoidmain(Stringargs[]){inti,j;inta[]={5,9,6,8,7};for(i=0;ia.length-1;i++){intk=i;for(j=i;ja.length;j++)if(a[j]a[k])k=j;inttemp=a[i];a[i]=a[k];a[k]=temp;}for(i=0;ia.length;i++)System.out.print(a[i]+);System.out.println();}}答案:56789难度系数:A知识点:数组比较六、编程题(2题;每题10分,共20分)1编写一个程序,设定一个有大小写字母的字符串,先将字符串的大写字符输出,再将字符串中的小写字符输出。(难度系数B知识点:字符串)答案:publicclassout{publicstaticvoidmain(Stringargs[]){Strings1=HelloJava;StringBufferbufup=newStringBuffer();StringBufferbuflow=newStringBuffer();for(inti=0;ibufup.length();i++){if(s1.charAt(i)97){bufup.append(s1.charAt(i));bufup.append('');}else{buflow.append(s1.charAt(i));buflow.append('');}}System.out.println(s1=+s1);System.out.println(uppercase=+bufup);System.out.println(lowercase=+buflow);}}2、从键盘上输入客户资料:姓名、地址、电话号码,然后保存到Reader.txt文件里。(难度系数A,知识点:输入输出处理)importjava.io.*;publicclassLesson8D2{StringdName;StringdAddress;StringdPhone;InputStreamReaderkReader;BufferedReaderbReader;FileOutputStreamfWrite;publicLesson8D2(){try{kReader=newInputStreamReader(System.in);bReader=newBufferedReader(kReader);System.out.println(DealerName:);dNa