java工程师面试题及答案.doc
java工程师面试题及答案
单项选择题(每题2分,共10题)
1.Java中,定义常量的关键字是()
A.constB.finalC.staticD.super
2.以下哪个是Java中的合法标识符()
A.123abcB.classC._nameD.abc
3.关于抽象类,说法正确的是()
A.可以实例化B.不能有抽象方法
C.子类必须实现父类所有抽象方法D.可以有构造方法
4.以下哪种集合是线程安全的()
A.ArrayListB.HashMapC.VectorD.HashSet
5.Java中,用于处理输入输出的包是()
A.java.utilB.java.ioC.java.langD.java.sql
6.以下哪个修饰符可以使类中的成员变量只能在本类中访问()
A.publicB.protectedC.privateD.缺省
7.多态的实现依赖于()
A.继承B.接口C.方法重写D.以上都是
8.以下哪种循环结构会先执行一次循环体()
A.forB.whileC.do-whileD.以上都不是
9.当一个对象被垃圾回收器回收之前,会调用()方法。
A.finalizeB.toStringC.equalsD.hashCode
10.以下哪个不是Java的基本数据类型()
A.byteB.IntegerC.charD.double
答案:1.B2.C3.D4.C5.B6.C7.D8.C9.A10.B
多项选择题(每题2分,共10题)
1.以下属于Java面向对象特性的有()
A.封装B.继承C.多态D.抽象
2.以下哪些类位于java.util包下()
A.ArrayListB.HashMapC.StringD.Scanner
3.关于接口,正确的说法有()
A.接口中的方法默认是publicabstract
B.接口中的变量默认是publicstaticfinal
C.一个类可以实现多个接口
D.接口可以继承接口
4.以下哪些是异常处理的关键字()
A.tryB.catchC.finallyD.throw
5.以下哪些属于集合框架中的接口()
A.ListB.SetC.MapD.Collection
6.在Java中,以下哪些是合法的数组声明()
A.int[]arr1;B.intarr2[];C.int[]arr3=newint[5];D.int[]arr4={1,2,3};
7.以下哪些修饰符可以用于方法()
A.publicB.staticC.finalD.abstract
8.以下哪些是Java中的访问控制修饰符()
A.publicB.protectedC.privateD.default
9.关于线程,正确的说法有()
A.可以通过继承Thread类创建线程
B.可以通过实现Runnable接口创建线程
C.线程的生命周期包括新建、就绪、运行、阻塞、死亡
D.可以使用wait()、notify()方法实现线程间通信
10.以下哪些方法是Object类的方法()
A.equalsB.hashCodeC.toStringD.clone
答案:1.ABCD2.ABD3.ABCD4.ABCD5.ABCD6.ABCD7.ABCD8.ABCD9.ABCD10.ABCD
判断题(每题2分,共10题)
1.Java是一种解释型语言。()
2.一个类中可以有多个构造方法。()
3.静态方法可以访问非静态成员变量。()
4.字符串常量池可以提高字符串的使用效率。()
5.接口中可以有构造方法。()
6.数组的长度是不可变的。()
7.catch块可以没有。()
8.枚举类型是一种特殊的数据类型。()
9.多线程编程中,synchronized关键字可以保证代码块或方法