——学年第学期《Java程序设计》课程试题课程号:√考试□A卷√闭卷□考查□B卷□开卷题号一二三四五六七八九十总分阅卷教师各题分数4020105520100实得分数一、单项选择题(20题;每题2分,共40分)1、下面选项中,___不可以用作变量名的首字符。A)字母B)下划线(_)C)数字D)美元符号(¥)答案:C(难度系数C)知识点:变量2、下面语句中,____不会出现编译警告或错误。A)floatf=1.3;B)charc=”a”;C)byteb=25;D)booleanb=null;答案:C(难度系数B)知识点:赋值相容3、下列叙述正确的是___。A)final类可以有子类B)abstract类中只可以有abstract方法C)abstract类上可以有非abstract方法,但该方法不可以用final修饰D)不可以同时用final和abstract修饰一个方法答案:D(难度系数B)知识点:抽象类,抽象方法4、创建一个标识有“关闭”按钮的语句是___。A)TextFieldb=newTextField(“关闭”);B)Labelb=newLabel(“关闭”);C)Checkboxb=newCheckbox(“关闭”);D)Buttonb=newButton(“关闭”);答案:D(难度系数C)知识点:GUI编程5、在编写异常处理的Java程序中,每个catch语句块都应该与___语句块对应,使得用该语句块来启动Java的异常处理机制。班级:姓名:学号:试题共页加白纸张密封线A)if–elseB)switchC)tryD)throw答案:C(难度系数B)知识点:异常6、paint()方法使用_____类型的参数。A)GraphicsB)Graphics2DC)StringD)Color答案:A(难度系数B,知识点applet)7、下列语句正确的是________。A)inta={1,2,3}B)intb=(1,2,3);C)intc[]={1,2,3}D)int[]d={123}答案:C(难度系数C)知识点:数组8、下面___函数是publicvoidaMethod(){...}的重载函数。A)voidaMethod(){...}B)publicintaMethod(){...}C)publicvoidaMethod(){...}D)publicintaMethod(intm){...}答案D(难度系数A,知识点:重载)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)常量用大写字母,变量用小写字母B)JAVA的标识符严格区分大小写C)第一个字符不是数字D)标识符中任何位置都不能用数字答案:D(难度系数C)知识点:标识符14、在Applet程序的自定义的Applet子类中,在Applet的界面中显示文字、图形和其他界面元素,常常重载的方法是。A)start()B)stop()C)paint()D)init()答案C(难度系数C知识点:绘图,图形界面)15、下面各类对象不能接受用户输入的是。A)TextFieldB)JTextFieldC)JTextareaD)Jlable答案D(难度系数C知识点:常用组件,可视化)16、在读字符文件Employee.dat时,使用该文件作为参数的类是_____。A)BufferedReaderB)DataInputStreamC)DataOutputStreamD)FileInputStream答案:A;(难度系数:B;知识点:文件IO。)17、在Java中,能实现多重继承效果的方式是_____。A)内部类B)适配器C)接口D)同步答案:C;(难度系数:B;知识点:java特性。)18、关于被私有访问控制符private修饰的成员变量,以下说法正确的是___。A)可以被三种类所引用:该类自身、与它在同一个包中的其他类、在其他包中的该类的子类B)可以被两种类访问和引用:该类本身、该类的所有子类C)只能被该类自身所访问和修改D)只能被同一个包中的类访问答案:C(难度B)知识点:类的继承19、下列各类中有一个是其它类的超类,它是。A)FontB)FrameC)objectD)Object答案D(难度系数C知识点:常见类,)20、下列类的定义中,错误的是___。A)classx{....}B)publicxextendsy{....}C)publicclassxextendsy{....}D)classxextendsyimplementsy1{....}答案:B(难度B)知识点:类的定义二、填空题(10题;每题2分,共20分)1不能定义实例的类称为,它由关键词来标明。答案抽象类abstract(难度B知识点:知识点:类的定义,对象使用)2定义一个包含7个元素的数组a,则该数组的最后一个元素是。答案:a[6](难度系数C知识点:数组)3在Java中只能实现单继承(Java不支持多重继承),但可通过实现多重继承。答案:接口(难度系数B知识点:接口)4Applet的生命周期是有init()、start()、stop()、destroy()这4个方法构成的,在程序执行过程中,方法只被调用执行一次,但start()方法可以多次被调用执行。答案:init()(难度系数B知识点:小应用程序)5读写器是以___________为基本单位访问文件的,读写器之外的其他输入流、输出流以及随机访问文件都是以___________为基本单位访问文件的。答案:字符字节(难度系数C知识点:文件与数据流)6、在java.net中提供了两个类:和,分别用来用于客户端和服务器端的Socket通信。答案SocketServerSocket(难度B知识点:网络基本类)7、设x=2,则表达式(x++)*3的值是。答案:6(难度系数:B知识点:运算符与表达式)8、字符串分为两大类,一类是字符串常量,使用类的对象表示;另一类是字符串变量,使用类的对象表示。答案:String、StringBuffer;(难度:B;知识点:变量类型。)9、数组x定义如下intx[][]=newint[3][2]则x..length的值为____________,x[0].length的值为____________。答案:3、2(难度系数:B知识点:二维数组)10、在Java中用一个变量名表示一组数据的机制是。答案:数组(知识点:数组难度系数C)三、判断题(10题;每题1分,共10分)1.()任何类都必须显式地定义该类的构造方法,以便对类的成员进行各种初始化操作。答案:错(难度系数B)知识点:构造方法2.()用Javac编译Java源文件后得到代码叫字节码。答案:对(难度系数B)知识点:JAVA简介3.()java.lang.System类中的in和out属性是表示标准输入和标准输出。答案:对(难度系数B)知识点:数据流4.()Java的各种数据类型所占用的内存长度与具体软硬件环境有关。答案:错(难度系数:C知识点:JAVA特点)5.()在Java中不允许一个方法在自身定义的内部调用自己。答案:错难度系数C知识点:类6.()abstract和final不能同时修饰同一个类。答案对(难度系数C知识点:类的定义,修饰)7.()访问类的成员,必须以类的对象为前缀。答案错(难度系数C知识点:类的封装,访问)8.()Java源程序编写好之后,以文件的形式保存在硬盘或U盘上,源文件的名字可以随便取的,它不一定与程序的主类名一致。答案:错(难度系数B)知识点:JAVA简介9.()线程使用sleep()方法休眠后,可以用notify()方法唤醒。答案:错(难度系数B)知识点:多线程10.()用Javac编译Java源文件后得到代码叫字节码。答案:错(难度系数B)知识点:JAVA简介四、程序填空题(1题;每题5分,共5分)1.以下程序的功能是将文件a.txt复制到b.txt,在空白处填入适当的内容。importjava.io.*;publicclassC{publicstaticvoidmain(String[]args)throwsIOException{FileinputFile=(1);FileoutputFile=newFile(b.txt);FileReaderin=newFileReader(inputFile);FileWriterout=new(2);intc;while((3))out.write(c);in.close();out.close();}}(难度系数:B知识点:JAVA输入输出)答案:(1)newFile(a.txt)(2)FileWriter(outputFile)(3)(c=in.read())!=-1五、读程序写结果(1题;每题5分,共5分)1.写出以下程序的运行结果。importjava.io.*;publicclassATest{publicstaticvoidmain(Stringargs[]){Subsb=newSub();System.out.println(sb.method1());}}classSuper{intx=1,y=2;intmethod1(){returnxy?x:y;}}classSubextendsSuper{intmothod1(){return((xy)?x:y);}}程序运行结果是:答案:1(难度系数: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、设计雇员Employee类,记录雇员的情况,包括姓名、年薪、受雇时间,要求定义MyDate类作为受雇时间,其中包括工作的年、月、日,并用相应的方法对Employee类进行设置。编写测试类测试Employee类。要求使用自己的包。(难度系数B)知识点:类的定义答案:packagemypackage.employee;classMyDate{privateintyear;privateintmonth;privateintday;publicMyDate(intyear,intmonth,intday){this.year=year;this.month=month;th