必备题库)
一、 单选题
1、当某一线程正处于休眠状态,而另一个线程用 Thread 类中的 interrupt() 方法中断它时,抛出的异常类型是( )。 A) IOException B) RuntimeException
C) InterruptedException
D) ClassNotFoundException
1、当某一线程正处于休眠状态,而另一个线程用 Thread 类中的 interrupt() 方法中断它时,抛出的异常类型是( )。 A) IOException B) RuntimeException
C) InterruptedException
D) ClassNotFoundException
2、下面的程序段的功能是( )。
File file1=new File(\"d:\\\\xxx\\\\yyy\\\\zzz\"); file1.mkdirs();
A)在当前目录下生成子目录:\\xxx\\yyy\\zzz B)生成目录: e:\\xxx\\yyy\\zzz C)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对
3、应用程序的main方法中有以下语句,则输出的结果是 ( )。
String s = \"xxxxxxxxxxxxxxx#123#456#zzzzz\"; int n = s.indexOf(\"#\"); int k = s.indexOf(\"#\String s2 = s.substring(n+1, k); System.out.println(s2);
A) 123456 B) 123 C) xxxxxxxxxxxxxxx D) zzzzz 4、关于下面的程序Test.java说法正确的是( )。
public class Test { String x=\"1\"; int y;
public static void main(String args[]) { int z=2; System.out.println(x+y+z);
第 1 页 共 7 页
} }
A)3 B)102 C) 12 D)程序有编译错误
5、应用程序的main方法中有以下语句,则输出的结果是 ( )。
int b[][]={{1, 1, 1}, {2,2}, {3}};
int sum=0;
for(int i=0; i A) 10 B)6 C) 9 D) 13 6、应用程序的main方法中有以下语句,则执行后输出的结果是 ( int[] x = {125,21,5,168,98}; int min = x[0]; for (int i=1; i } System.out.println(min); A) 125 B) 5 C) 98 D) 168 7、应用程序的main方法中有以下语句,则输出的结果是 ( )。 Hashtable hashtable=new Hashtable(); hashtable.put(\"100\hashtable.put(\"200\hashtable.put(\"300\ System.out.println(hashtable.get(\"300\").toString() + hashtable.get(\"200\").toString() + hashtable.get(\"100\").toString()); A) aaa B) bbb C) ccc D) cccbbbaaa 第 2 页 共 7 页 )。 8、以下关于java异常说法不正确的是( )。 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 的内容是( )。 import java.io.*; public class Test { } A) ABCABC B) ABCDE C)Test 10、下面说法不正确的是( )? A)列表(List)、集合(Set)和映射(Map)都是java.util包中的接口。 B)List接口是可以包含重复元素的有序集合。 C)Set接口是不包含重复元素的集合。 public static void main(String args[]) { } try { } catch(IOException e) { } System.out.println(e.toString()); String s=\"ABCDE\"; byte b[]=s.getBytes(); FileOutputStream file=new FileOutputStream(\"test.txt\file.write(b); file.close(); D) ABCDE ABCDE ABCDE D)Map接口将键映射到值,键可以重复,但每个键最多只能映射一个值。 第 3 页 共 7 页 二、多选题 1、下面哪些关键字能用来控制对类成员的访问( )? A) public B) protected C) private D) default 2、下面关于Java中异常处理try块的说法正确的是( )? A) try块后通常应有一个catch 块,用来处理try块中抛出的异常。 B) catch 块后必须有finally块。 C)可能抛出异常的方法调用应放在try块中。 D)对抛出的异常的处理必须放在try块中 3、线程对象的生命周期中,通常经历下面哪些状态( )。 A)新建 B)运行 C)就绪 D)死亡 4、定义如下的二维数组b,下面的说法正确的是( )。 int b[][]={{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的语句中正确的是( )。 A) B x1= new B( ); B) B x1= new C( ); C) C x1=new C( ); D) C x1= new B( ); 6、下面关于进程、线程的说法正确的是( )。 A)进程是程序的一次动态执行过程。一个进程在其执行过程中,可以产生多个 线程——多线程,形成多条执行线索。 B)线程是比进程更小的执行单位,是在一个进程中独立的控制流,即程序内部 的控制流。线程本身不能自动运行,栖身于某个进程之中,由进程启动执行。 C)Java多线程的运行与平台相关。 D)对于单处理器系统,多个线程分时间片获取CPU或其他系统资源来运行。对 于多处理器系统,线程可以分配到多个处理器中,从而真正的并发执行多任务。 7、下面关于外部类和内部类成员的相互访问的规则中,正确的选项是( )。 第 4 页 共 7 页 A)内部类可以直接访问外部类的成员 B)外部类可以直接访问内部类的成员 C)外部类不能访问内部类的成员 D)外部类可通过创建内部类的实例来访问内部类的成员 三、程序阅读题 1、阅读下面的程序代码,并回答问题(问3分,问3分,共6分)。 String s1 = new String(\"abcde\"); String s2 = new String(\"abcde\"); boolean b1= s1.equals(s2); boolean b2 = s1== s2; System.out.print(b1+\" \"+b2); 程序段执行后,在命令行的输出结果如何? 解释输出(1)的结果的原因? 答案: true false equals方法比较两个字符串的内容是否相等;运算符“==”判断两个对象是否指向同一个引用,即是否为同一个对象。 2、阅读下面的程序,并回答问题(问3分,问3分,共6分)。 import java.io.*; public class Test { public static void main(String args[]) throws 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); } } } 编译运行上面的程序: 第 5 页 共 7 页 从键盘输入10,回车后输出的结果如何? 从键盘输入exit,回车后程序能正确执行吗?为什么? 答案: 100 不能;因为方法Integer.parseInt(str)不能将字符串“exit”转化为整数,抛出异常。 3、写出下面的程序编译、运行后的结果(6分)。 public class Test{ public static void main(String args[]) { new Student(\"Tom\ new Student(\"Jack\ new Student(\"Mary\ System.out.println(\"name\sex\chinese\english\"); Student.print(); } } class Student { protected String name; protected char sex; 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; 第 6 页 共 7 页 { 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+\"\\"+sex+\"\\"+chinese+\"\\"+english); } } 答案: name sex chinese english Mary f 76 86 Jack m 66 89 Tom m 90 88 第 7 页 共 7 页 因篇幅问题不能全部显示,请点此查看更多更全内容