《JAVA语言程序设计》期末考试试题及答案2.docx
- 文档编号:12437686
- 上传时间:2023-06-05
- 格式:DOCX
- 页数:34
- 大小:36.34KB
《JAVA语言程序设计》期末考试试题及答案2.docx
《《JAVA语言程序设计》期末考试试题及答案2.docx》由会员分享,可在线阅读,更多相关《《JAVA语言程序设计》期末考试试题及答案2.docx(34页珍藏版)》请在冰点文库上搜索。
《JAVA语言程序设计》期末考试试题及答案2
《JAVA语言程序设计》期末考试试题及答案
一、单选题
1、下列程序段执行后的结果是(A)。
Strings=newString("abcdefg");
for(inti=0;i System.out.print(s.charAt(i)); } A)acegB)ACEGC)abcdefgD)abcd 2、有整型数组: int[]x={12,35,8,7,2};,则调用方法Arrays.sort(x)后,数组x中的元素值依次是(A). A)2781235B)1235872 C)3512872D)8712352 3、下面的程序段创建了BufferedReader类的对象in,以便读取本机c盘my文件夹下的文件1.txt。 File构造函数中正确的路径和文件名的表示是(C)。 Filef=newFile(填代码处); file=newFileReader(f); in=newBufferedReader(file); A)"./1.txt"B)"../my/1.txt"C)"c: \\my\\1.txt"D)"c: \my\1.txt" 4、应用程序的main方法中有以下语句,则输出的结果是(A)。 Strings1=newString("abc"); Strings2=newString("abc"); booleanb1=s1.equals(s2); booleanb2=(s1==s2); System.out.print(b1+""+b2); A)truefalseB)falsetrueC)truetrueD)falsefalse 5、应用程序的main方法中有以下语句,则输出的结果是(B)。 Hashtablehashtable=newHashtable(); hashtable.put("x","12345"); hashtable.put("y","67890"); hashtable.put("a","abcde"); System.out.println(hashtable.get("a")); A)aB)abcdeC)12345D)67890 6、下面语句的功能是(A)。 RandomAccessFileraf2=newRandomAccessFile("1.txt","rw"); A)打开当前目录下的文件1.txt,既可以向文件写数据,也可以从文件读数据。 B)打开当前目录下的文件1.txt,但只能向文件写入数据,不能从文件读取数据。 C)打开当前目录下的文件1.txt,但不能向文件写入数据,只能从文件读取数据。 D)以上说法都不对。 7、应用程序的main方法中有以下语句,则输出的结果是(B)。 Strings="12345#aaa#bbb#67890"; intn=s.indexOf("#"); intk=s.indexOf("#",n+1); intm=s.indexOf("#",k+1); Strings2=s.substring(m+1); System.out.println(s2); A)123456B)67890C)aaaD)bbb 8、下面程序段执行后b的值是(B)。 Integerinteg=newInteger(9); booleanb=integinstanceofObject; A)9B)trueC)1D)false 9、应用程序Test.java的源程序如下,在命令行键入: javaTestaaabbc 回车后输出的结果是(A)。 publicclassTest{ publicstaticvoidmain(Stringargs[]){ intk1=args.length; intk2=args[1].length(); System.out.print(k1+""+k2); } } A)32B)12C)13D)33 10、应用程序的main方法中有以下语句,则输出的结果是(A)。 intb[][]={{1},{2,2},{2,2,2}}; intsum=0; for(inti=0;i for(intj=0;j sum*=b[i][j]; } } System.out.println("sum="+sum); A)32B)11C)2D)3 11、应用程序的main方法中有以下语句,则执行后输出的结果是(D)。 int[]x={125,21,5,168,98}; intmax=x[0]; for(inti=1;i if(x[i]>max) max=x[i]; } System.out.println(max); A)125B)5C)98D)168 12、程序Test.java编译运行后输出的结果是(A)。 publicclassTest{ Strings1="java"; publicstaticvoidmain(Stringargs[]){ intz=2; Testt=newTest(); System.out.println(t.s1+z); } } A)java2B)2C)没有输出结果D)java 13、应用程序的main方法中有以下语句,则输出的结果是(A)。 Strings1="0.5",s2="12"; doublex=Double.parseDouble(s1); inty=Integer.parseInt(s2); System.out.println(x+y); A)12.5B)120.5C)12D)“12.5” 14、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt的内容是(D)。 importjava.io.*; publicclassTest{ publicstaticvoidmain(Stringargs[]){ try{ Strings="ABCDE"; byteb[]=s.getBytes(); FileOutputStreamfile=newFileOutputStream("test.txt",true); file.write(b); file.close(); } catch(IOExceptione){ System.out.println(e.toString()); } } } A)ABCABCB)ABCDEC)TestD)ABCDEABCDEABCDE 15、下面那些方法不是接口Collection中已声明的方法(C)? A)添加元素的add(Objectobj)方法 B)删除元素的remove(Objectobj)方法 C)得到元素个数的length()方法 D)返回迭代器的iterator()方法,迭代器用于元素遍历 二、多选题 1、下面main()方法的定义哪些是正确的(ACD)? A)publicstaticvoidmain(Stringargs[]){}B)publicstaticvoidmain(String[]){} C)publicstaticvoidmain(String[]args){}D)publicstaticvoidmain(String[]x){} 2、线程对象的生命周期中,通常经历下面哪些状态(ABCD)。 A)新建B)运行C)就绪D)死亡 3、下面说法正确的是(ABCD)。 A)final可修饰类、属性(变量)、方法。 B)abstract可修饰类、方法。 C)抽象方法只有方法头,没有方法体。 D)关键字final和abstract不能同时使用。 4、下面关于java中输入/输出流的说法正确的是(ABCD)。 A)FileInputStream与FileOutputStream类用读、写字节流。 B)Reader与Writer类用来读、写字符流。 C)RandomAccessFile既可以用来读文件,也可以用来写文件。 D)File类用来处理与文件相关的操作。 5、下面说法正确的是(ABCD)。 A)如果某公共接口被声明在一个源文件中,则接口必须与源文件具有相同名字。 B)如果源文件包含import语句,则该语句必须是除空行和注释行外的第一个语句行。 C)如果某源文件包含package语句,则该语句必须是第一个非空、非注释行。 D)接口中的方法必定是抽象方法,但可以不用关键字abstract修饰。 6、下面关于Java中异常处理try块的说法正确的是(AC)? A)try块后通常应有一个catch块,用来处理try块中抛出的异常。 B)catch块后必须有finally块。 C)可能抛出异常的方法调用应放在try块中。 D)对抛出的异常的处理必须放在try块中 7、下面关于进程、线程的说法正确的是(ABCD)。 A)进程是程序的一次动态执行过程。 一个进程在其执行过程中,可以产生多个线程——多线程,形成多条执行线索。 B)线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序内部的控制流。 线程本身不能自动运行,栖身于某个进程之中,由进程启动执行。 C)Java多线程的运行与平台相关。 D)对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。 对于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务。 8、关于BufferedReader类的readLine()方法,以下说法正确的是ACD()。 A)方法readLine()每次读取一行数据。 B)方法readLine()每次读取一个字节。 C)该方法可能抛出IOException异常,调用该方法时通常应将它放到try块中,并通过catch块处理异常。 D)如果读到流的末尾,该方法返回的结果为null。 三、程序阅读题 1、阅读下面的程序,回答问题(问3分,问3分,共6分)。 importjava.awt.*; importjavax.swing.*; publicclassTextendsJFrame{ publicT(){ super("GridLayout"); Containercon=this.getContentPane(); con.setLayout(newGridLayout(2,3)); con.add(newJButton("a")); con.add(newJButton("b")); con.add(newJButton("c")); con.add(newJButton("d")); con.add(newJButton("e")); con.add(newJButton("f")); setSize(200,80); setVisible(true); } publicstaticvoidmain(Stringargs[]){ newT(); } } 画图表示程序运行后的图形界面。 如果程序通过实现某个接口处理按钮的动作事件,则该接口名为何? 接口中的方法头声明如何? 答案: 接口名: ActionListener 接口中的方法: publicvoidactionPerformed(ActionEvente) 2、阅读下面的程序,回答问题(问3分,问3分,共6分)。 。 importjava.util.*; publicclassT{ publicstaticvoidmain(Stringargs[]){ Setset=newTreeSet(); set.add(newInteger(10)); set.add(newInteger(5)); set.add(newInteger(15)); set.add(newInteger(5)); set.add(newInteger(10)); System.out.println("size="+set.size()); Iteratorit=set.iterator(); while(it.hasNext()){ System.out.print(it.next()+""); } } } 程序运行后输出的结果如何? 说明java中的集合(Set接口)和映射(Map接口)的主要区别。 答案: size=3 51015 Set接口是不包含重复元素的集合;Map接口将键映射到值,键可以重复,但每个键最多只能映射一个值。 3、阅读下面的程序,并回答问题(问3分,问3分,共6分)。 importjava.io.*; publicclassTest{ publicstaticvoidmain(Stringargs[])throwsIOException{ BufferedReaderbuf=newBufferedReader( newInputStreamReader(System.in)); while(true){ Stringstr=buf.readLine(); if(str.equals("quit")) break; intx=Integer.parseInt(str); System.out.println(x*x); } } } 编译运行上面的程序: 从键盘输入5,回车后输出的结果如何? 从键盘输入quit,回车后程序执行情况如何? 答案: 25 终止应用程序的运行。 《JAVA程序设计》期末考试试题(五) 二、单选题 1、当某一线程正处于休眠状态,而另一个线程用Thread类中的interrupt()方法中断它时,抛出的异常类型是(C)。 A)IOExceptionB)RuntimeException C)InterruptedExceptionD)ClassNotFoundException 2、下面的程序段的功能是(D)。 Filefile1=newFile("d: \\xxx\\yyy\\zzz"); file1.mkdirs(); A)在当前目录下生成子目录: \xxx\yyy\zzzB)生成目录: e: \xxx\yyy\zzz C)在当前目录下生成文件xxx.yyy.zzzD)以上说法都不对 3、应用程序的main方法中有以下语句,则输出的结果是(B)。 Strings="xxxxxxxxxxxxxxx#123#456#zzzzz"; intn=s.indexOf("#"); intk=s.indexOf("#",n+1); Strings2=s.substring(n+1,k); System.out.println(s2); A)123456B)123C)xxxxxxxxxxxxxxxD)zzzzz 4、关于下面的程序Test.java说法正确的是(D)。 publicclassTest{ Stringx="1"; inty; publicstaticvoidmain(Stringargs[]){ intz=2; System.out.println(x+y+z); } } A)3B)102C)12D)程序有编译错误 5、应用程序的main方法中有以下语句,则输出的结果是(A)。 intb[][]={{1,1,1},{2,2},{3}}; intsum=0; for(inti=0;i for(intj=0;j sum+=b[i][j]; } } System.out.println("sum="+sum); A)10B)6C)9D)13 6、应用程序的main方法中有以下语句,则执行后输出的结果是(B)。 int[]x={125,21,5,168,98}; intmin=x[0]; for(inti=1;i if(x[i] min=x[i]; } System.out.println(min); A)125B)5C)98D)168 7、应用程序的main方法中有以下语句,则输出的结果是(D)。 Hashtablehashtable=newHashtable(); hashtable.put("100","aaa"); hashtable.put("200","bbb"); hashtable.put("300","ccc"); System.out.println(hashtable.get("300").toString() +hashtable.get("200").toString() +hashtable.get("100").toString()); A)aaaB)bbbC)cccD)cccbbbaaa 8、以下关于java异常说法不正确的是(D)。 A)Throwable类是Java语言中Error类和Exception类的父类。 B)当异常对象是Exception类(或其子类)的实例时,能通过Java虚拟机或者throw语句抛出该异常对象,并能通过try…catch…finally处理。 C)如果只用一个catch块捕捉多个异常对象,则catch子句中的参数类型应是所有异常对象的父类。 D)以上说法都不对。 9、下面的程序创建了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,则文件test.txt的内容是(D)。 importjava.io.*; publicclassTest{ publicstaticvoidmain(Stringargs[]){ try{ Strings="ABCDE"; byteb[]=s.getBytes(); FileOutputStreamfile=newFileOutputStream("test.txt",true); file.write(b); file.close(); } catch(IOExceptione){ System.out.println(e.toString()); } } } A)ABCABCB)ABCDEC)TestD)ABCDEABCDEABCDE 10、下面说法不正确的是()D? A)列表(List)、集合(Set)和映射(Map)都是java.util包中的接口。 B)List接口是可以包含重复元素的有序集合。 C)Set接口是不包含重复元素的集合。 D)Map接口将键映射到值,键可以重复,但每个键最多只能映射一个值。 二、多选题 1、下面哪些关键字能用来控制对类成员的访问(ABC)? A)publicB)protectedC)privateD)default 2、下面关于Java中异常处理try块的说法正确的是(AC)? A)try块后通常应有一个catch块,用来处理try块中抛出的异常。 B)catch块后必须有finally块。 C)可能抛出异常的方法调用应放在try块中。 D)对抛出的异常的处理必须放在try块中 3、线程对象的生命周期中,通常经历下面哪些状态(ABCD)。 A)新建B)运行C)就绪D)死亡 4、定义如下的二维数组b,下面的说法正确的是(ACD)。 intb[][]={{1,2,3},{4,5},{6,7,8}}}; A)b.length的值是3。 B)b[1].length的值是3。 C)b[1][1]的值是5。 D)二维数组b的第一行有3个元素 5、类B是一个抽象类,类C是类B的非抽象子类,下列创建对象x1的语句中正确的是(BC)。 A)Bx1=newB();B)Bx1=newC(); C)Cx1=newC();D)Cx1=newB(); 6、下面关于进程、线程的说法正确的是(ABCD)。 A)进程是程序的一次动态执行过程。 一个进程在其执行过程中,可以产生多个线程——多线程,形成多条执行线索。 B)线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序内部的控制流。 线程本身不能自动运行,栖身于某个进程之中,由进程启动执行。 C)Java多线程的运行与平台相关。 D)对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。 对于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务。 7、下面关于外部类和内部类成员的相互访问的规则中,正确的选项是(AD)。 A)内部类可以直接访问外部类的成员 B)外部类可以直接访问内部类的成员 C)外部类不能访问内部类的成员 D)外部类可通过创建内部类的实例来访问内部类的成员 三、程序阅读题 1、阅读下面的程序代码,并回答问题(问3分,问3分,共6分)。 Strings1=newString("abcde"); Strings2=newString("abcde"); booleanb1=s1.equals(s2); booleanb2=s1=
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA语言程序设计 JAVA 语言程序设计 期末考试 试题 答案