java程序面试试题及答案
一、单项选择题(每题2分,共10题)
1.Java中用于创建对象的关键字是()
A.newB.createC.makeD.build
2.以下哪个是Java的基本数据类型()
A.StringB.IntegerC.floatD.ArrayList
3.类中的成员变量如果没有初始化,其默认值为()
A.0B.nullC.取决于数据类型D.编译错误
4.以下关于接口的说法正确的是()
A.接口可以有构造方法B.接口可以实现多个接口
C.接口中的方法默认是privateD.接口不能实例化
5.以下哪个关键字用于跳出循环()
A.continueB.breakC.returnD.exit
6.Java中处理异常的关键字不包括()
A.tryB.catchC.finallyD.throwable
7.以下哪种集合类是线程安全的()
A.ArrayListB.HashMapC.VectorD.HashSet
8.方法重载要求方法()不同
A.返回值类型B.方法名C.参数列表D.访问修饰符
9.以下关于抽象类的说法正确的是()
A.抽象类可以实例化B.抽象类不能有抽象方法
C.抽象类可以有非抽象方法D.抽象类必须有构造方法
10.Java中字符串常量池位于()
A.堆B.栈C.方法区D.本地方法栈
答案:1.A2.C3.C4.D5.B6.D7.C8.C9.C10.C
二、多项选择题(每题2分,共10题)
1.以下属于Java面向对象特性的有()
A.封装B.继承C.多态D.抽象
2.以下哪些是合法的标识符()
A._abcB.123abcC.$abcD.class
3.以下哪些是Java中的访问修饰符()
A.publicB.privateC.protectedD.default
4.以下关于数组的说法正确的有()
A.数组长度一旦确定不能改变B.数组可以存储不同类型的数据
C.数组是对象D.可以多维数组
5.以下哪些类位于java.util包中()
A.ArrayListB.HashMapC.ScannerD.Date
6.以下关于线程的说法正确的有()
A.线程是程序中的执行单元B.可以通过继承Thread类创建线程
C.可以通过实现Runnable接口创建线程D.线程之间可以共享资源
7.以下哪些是Java的集合接口()
A.CollectionB.ListC.SetD.Map
8.以下关于异常处理的说法正确的有()
A.try块中可以抛出多个异常B.catch块可以捕获多种类型异常
C.finally块无论是否有异常都会执行D.可以不处理异常
9.以下哪些属于Java的输入输出流()
A.InputStreamB.OutputStreamC.ReaderD.Writer
10.以下关于反射机制的说法正确的有()
A.可以在运行时获取类的信息B.可以创建对象
C.可以调用方法D.可以访问成员变量
答案:1.ABCD2.AC3.ABCD4.ACD5.ABCD6.ABCD7.ABCD8.ABC9.ABCD10.ABCD
三、判断题(每题2分,共10题)
1.Java是一种编译型和解释型相结合的语言。()
2.一个类可以实现多个接口。()
3.静态方法可以访问非静态成员变量。()
4.String类是不可变类。()
5.多态性是指一个对象具有多种形态。()
6.抽象方法必须在抽象类中。()
7.HashSet允许存储重复元素。()
8.异常处理中,finally块是可选的。()
9.接口中的变量默认是publicstaticfinal的。()
10.Java中所有类都直接或间接继承自Object类。()
答案:1.√2.√3.×4.√5.√6.√7.×8.√9.√10.√
四、简答题(每题5分,共