JAVA面试题第一阶段测试-考试版new
- 格式:docx
- 大小:31.38 KB
- 文档页数:13
JAVA第一阶段测试 姓名:____________ 一、单选择题(每题1分) 1、设 x = 1 , y = 2 ,z = 3,则表达式 y+=z--/++x 的值是( )。 A. 3 B. 3.5 C. 4 D. 5 2、不允许作为类及类成员的访问控制符的是( )。 A. public B. private C. static D. protected 3、关于选择结构下列哪个说法正确?( ) A.if语句和 else语句必须成对出现 B.if语句可以没有else语句对应 C.switch结构中每个case语句中必须用break语句 D.switch结构中必须有default语句 4、关于对象成员占用内存的说法哪个正确?( ) A.同一个类的对象共用同一段内存 B、同一个类的对象使用不同的内存段,但静态成员共享相同的内存空间 C.对象的方法不占用内存 D.以上都不对 5、构造函数何时被调用?( ) A、创建对象时 B、类定义时 C、 使用对象的方法时 D、使用对象的属性时 6、运行以下代码片段,输出结果是?() class X { Y b = new Y(); X() { System.out.print("X"); } }
class Y { Y() { System.out.print("Y"); } }
public class Z extends X { Y y = new Y(); Z() { System.out.print("Z"); }
public static void main(String[] args) { new Z(); } } A.Z B.YZ C.XYZ D. YXYZ
7、在Java语言中,类Student是类Person的子类,Student的构造方法中有一句"super()",该语句表达了什么概念?( )
A. 调用类Worker中定义的super()方法 B. 调用类Person中定义的super()方法 C. 调用类Person的构造方法 D. 语法错误
8、覆盖与重载的关系是 ( ) A、覆盖只有发生在父类与子类之间,而重载可以发生在同一个类中 B.覆盖方法可以不同名,而重载方法必须同名 C.final修饰的方法可以被覆盖,但不能被重载 D.覆盖与重载是同一回事 9、以下关于java异常说法不正确的是( )。 A) Throwable类是 Java 语言中Error类和Exception类的父类。 B)当异常对象是Exception类(或其子类)的实例时,能通过 Java 虚拟机或者 throw语句抛出该异常对象,并能通过try…catch…finally处理。
C)如果只用一个catch块捕捉多个异常对象,则catch 子句中的参数类型应是所有异常对象的父类。
D)以上说法都不对。 10、下面的程序段的功能是( )。 File file1=new File("d:\\xxx\\yyy\\zzz"); file1.mkdirs(); A)在当前目录下生成子目录:\xxx\yyy\zzz B)生成目录:e:\xxx\yyy\zzz C)在当前目录下生成文件xxx.yyy.zzz D)以上说法都不对 11、应用程序的main方法中有以下语句,则输出的结果是 ( )。 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) zzzzz 12、关于下面的程序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); } } A)3 B)102 C) 12 D)程序有编译错误 13、应用程序的main方法中有以下语句,则输出的结果是( )。 int b[][]={{1, 1, 1}, {2,2}, {3}}; int sum=0; for(inti=0; ifor(int j=0; jsum+=b[i][j]; } } System.out.println("sum="+sum); A) 10 B)6 C) 9 D) 13 14、应用程序的main方法中有以下语句,则输出的结果是( )。 String s1=new String("abc"); String s2=new String("abc"); boolean b1=s1.equals(s2); boolean b2=(s1==s2); System.out.print(b1+" "+b2); A)true false B) false true C) true true D)false false 15、编译并运行以下代码将发生什么? ( ) public static void main(String args[]){ char digit = 'a'; for (inti = 0; i< 10; i++){ switch (digit) { case 'x' : { int j = 0; System.out.println(j); } default : { int j = 100; System.out.println(j); } } }
inti = j; System.out.println(i); } A. 输出11次100 B. 输出10次100,然后抛出运行期异常 C. 编译错误,因为变量i不能在main() 方法中被声明2次 D. 以上都不对
16、下面程序的输出结果是什么() Set set= new HashSet(); set.add("aaa"); set.add("bbb"); set.add("aaa"); System.out.println(set.size()); A. 编译不通过 B. 运行时出错 C. 输出3 D. 输出2 17、下列关于ArrayList、Vector和LinkedList集合的说法不正确是有() A. ArrayList集合底层是数组实现,该集合线程不安全 B. Vector 集合元素的存放是无序的 C. LinkedList集合底层是链表结构,适合做元素的增删操作 D. 这三个集合都是List接口的实现类 18、编译并运行以下代码的结果是?( ) import java.io.*;
public class MyThread extends Thread{ public static void main(String args[]){ MyThread mt = new MyThread(); mt.start(); }
public void run(){ try { sleep(200); System.out.println ("Printing from thread run() method"); } catch ( IOException e) {
} } } A. 编译错误. B. 输出: Printing from thread run() method. C. 线程先停止运行,在 200毫秒后恢复,并输出: Printing from thread run() method. D. 线程先停止运行,在恰好200毫秒后恢复。
19、属于Java输入输出流的、且处理的是char类型的类是( )。 A)Reader类 B)InputStream类 C)OutputStream类 D)File类
20、 设有四个线程,它们的优先级分别为如下四种之一。则那种级别的线程优先执行?()
A. Thread.MIN_PRIORITYB. Thread.MAX_PRIORITY C. Thread.NORM_PRIORITY D. 优先级别码为 7 级 21、java中获取Class对象的方式以下哪个方式不正确( ) A. 通过类名.class获取 B. 通过对象.getClass()获取 C. 通过Class.forName获取 D. 通过对象.class获取 22、新建一个流对象,下面哪个选项的代码是错误的?( ) A)new BufferedWriter(new FileWriter("a.txt")); B)new BufferedReader(new FileInputStream("a.dat")); C)new GZIPOutputStream(new FileOutputStream("a.zip")); D)new ObjectInputStream(new FileInputStream("a.dat"));
23、Java的集合框架中重要的接口java.util.Collection定义了许多方法。选项中哪个方法不是Collection接口所定义的?( ) A)int size() B)booleancontainsAll(Collection c) C)compareTo(Object obj) D)boolean remove(Object obj) 24、下面哪个选项中的代码没有定义内部类,或者错误的定义了内部类? ( ) A)public Class Line { int length; Class Point {//内部类代码} } B) public Class Line { public Point getPoint() { return new Point(){//内部类代码}; } } C) public Class Line { //外部类代码 } Class Point {//内部类代码} D) public Class Line { publicintcalcLength() { Class Point {//内部类代码} } }
25、list是一个ArrayList的对象,哪个选项的代码填写到//todo delete处,可以在Iterator遍历的过程中正确并安全的删除一个list中保存的对象?( ) Iterator it = list.iterator(); int index = 0; while (it.hasNext()){ Object obj = it.next(); if (needDelete(obj)) { //needDelete返回boolean,决定是否要删除 //todo delete }