1、 - .?JAVA程序设计?期末考试试题五一、 单项选择题1、当某一线程正处于休眠状态,而另一个线程用 Thread 类中的 interrupt() 方法中断它时,抛出的异常类型是 C 。A) IOException B) RuntimeExceptionC) InterruptedExceptionD) ClassNotFoundException2、下面的程序段的功能是( D )。File file1=new File(d:xxxyyyzzz);file1.mkdirs();A)在当前目录下生成子目录:xxxyyyzzz B)生成目录: e:xxxyyyzzzC)在当前目录下生成文件xxx
2、.yyy.zzz D)以上说法都不对 3、应用程序的main方法中有以下语句,那么输出的结果是 ( B )。String s=xxxxxxxxxxxxxxx#123#456#zzzzz;int n=s.indexOf(#); int k=s.indexOf(#,n+1);String s2=s.substring(n+1,k);System.out.println(s2);A)123456 B)123 C) xxxxxxxxxxxxxxx D) zzzzz4、关于下面的程序Test.java说确的是( D )。public class Test String x=1; int y; publi
3、c static void main(String args) int z=2; System.out.println(x+y+z); A)3 B)102 C) 12 D)程序有编译错误5、应用程序的main方法中有以下语句,那么输出的结果是 ( A )。 int b=1, 1, 1, 2,2, 3; int sum=0; for(int i=0;ib.length;i+) for(int j=0;jbi.length;j+) sum+=bij; System.out.println(sum=+sum);A) 10 B)6 C) 9 D) 13 6、应用程序的main方法中有以下语句,那么执行
4、后输出的结果是 ( B )。int x=125,21,5,168,98;int min=x0;for(int i=1;ix.length;i+)if(ximin)min=xi;System.out.println(min);A) 125 B)5 C) 98 D) 168 7、应用程序的main方法中有以下语句,那么输出的结果是 ( D )。Hashtable hashtable=new Hashtable();hashtable.put(100,aaa);hashtable.put(200,bbb);hashtable.put(300,ccc); System.out.println(hash
5、table.get(300).toString()+ hashtable.get(200).toString() + hashtable.get(100).toString(); A) aaa B) bbb C) ccc D) cccbbbaaa8、以下关于java异常说法不正确的选项是 D 。A)Throwable 类是 Java 语言中Error类和Exception类的父类。B)当异常对象是Exception类或其子类的实例时,能通过 Java 虚拟机或者 throw 语句抛出该异常对象,并能通过trycatchfinally处理。C)如果只用一个catch块捕捉多个异常对象,那么cat
6、ch 子句中的参数类型应是所有异常对象的父类。D)以上说法都不对。9、下面的程序创立了一个文件输出流对象,用来向文件test.txt中输出数据,假设程序当前目录下不存在文件test.txt,编译下面的程序Test.java后,将该程序运行3次,那么文件test.txt 的容是( D )。import java.io.*;public class Test public static void main(String args) try String s=ABCDE;byte b=s.getBytes();FileOutputStream file=new FileOutputStream(te
7、st.txt,true);file.write(b); file.close();catch(IOException e) System.out.println(e.toString();A) ABCABC B) ABCDE C)Test D) ABCDE ABCDE ABCDE 10、下面说法不正确的选项是( D )?A)列表(List)、集合(Set)和映射(Map)都是java.util包中的接口。B)List接口是可以包含重复元素的有序集合。C)Set接口是不包含重复元素的集合。D)Map接口将键映射到值,键可以重复,但每个键最多只能映射一个值。二、多项选择题1、下面哪些关键字能用来控
8、制对类成员的访问( ABC )?A) public B) protectedC) private D) default2、下面关于Java中异常处理try块的说确的是( AC )?A)try块后通常应有一个catch 块,用来处理try块中抛出的异常。 B) catch 块后必须有finally块。C)可能抛出异常的方法调用应放在try块中。 D)对抛出的异常的处理必须放在try块中3、线程对象的生命周期中,通常经历下面哪些状态 ABCD 。A)新建 B)运行 C)就绪 D)死亡 4、定义如下的二维数组b,下面的说确的是( ACD )。int b=1, 2, 3, 4, 5,6, 7, 8;A
9、)b.length的值是3。 B)b1.length的值是3。C)b11的值是5。 D)二维数组b的第一行有3个元素 5、类B是一个抽象类,类C是类B的非抽象子类,以下创立对象x1的语句中正确的选项是( BC )。A) B x1= new B( ); B)B x1= new C( ); C) C x1=new C( ); D) C x1= new B( );6、下面关于进程、线程的说确的是( ABCD )。A)进程是程序的一次动态执行过程。一个进程在其执行过程中,可以产生多个线程多线程,形成多条执行线索。B)线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序部的控制流。线程本身不能
10、自动运行,栖身于某个进程之中,由进程启动执行。C)Java多线程的运行与平台相关。D)对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。对于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务。7、下面关于外部类和部类成员的相互访问的规那么中,正确的选项是( AD )。A)部类可以直接访问外部类的成员B)外部类可以直接访问部类的成员C)外部类不能访问部类的成员D)外部类可通过创立部类的实例来访问部类的成员三、程序阅读题1、阅读下面的程序代码,并答复以下问题(u问3分,v问3分,共6分)。String s1=new String(abcde);String s2=n
11、ew String(abcde); boolean b1=s1.equals(s2);boolean b2=s1=s2; System.out.print(b1+ +b2); u程序段执行后,在命令行的输出结果如何?v解释输出(1)的结果的原因?答案:u true falsevequals方法比拟两个字符串的容是否相等;运算符“=判断两个对象是否指向同一个引用,即是否为同一个对象。2、阅读下面的程序,并答复以下问题(u问3分,v问3分,共6分)。import java.io.*;public class Test public static void main(String args) thr
12、ows IOException BufferedReader buf=new BufferedReader( new InputStreamReader(System.in); while(true) String str=buf.readLine(); if(str.equals(quit) break; int x=Integer.parseInt(str); System.out.println(x*x); 编译运行上面的程序:u从键盘输入10,回车后输出的结果如何?v从键盘输入exit,回车后程序能正确执行吗?为什么?答案:u100 v不能;因为方法Integer.parseInt(s
13、tr)不能将字符串“exit转化为整数,抛出异常。3、写出下面的程序编译、运行后的结果(6分)。public class Test public static void main(String args) new Student(Tom,m,90,88); new Student(Jack,m,66,89); new Student(Mary,f,76,86); System.out.println(nametsextchinesetenglish); Student.print(); class Student protected String name; protected char se
14、x; protected int chinese; protected int english; protected Student next; static Student list; Student(String name, char sex, int chinese,int english) this.name=name; this.sex=sex; this.chinese=chinese; this.english=english; this.next=list; list=this; static void print() Student friend=list; if(friend=null) System.out.println(The list is empty.); else do System.out.println(friend.toString(); friend=friend.next; while(friend!=null); public String toString() return new String(name+t+sex+t+chinese+t+english); 答案:name sex chinese englishMary f 76 86Jack m 66 89Tom m 90 88- -.可修编- .