java常见面试题及答案汇总二
单项选择题(每题2分,共10题)
1.Java中,以下哪个关键字用于定义常量?
A.constB.finalC.staticD.private
2.以下哪种集合类是线程安全的?
A.ArrayListB.LinkedListC.HashMapD.Vector
3.Java中,子类重写父类方法时,方法的访问权限应()
A.更严格B.更宽松C.保持一致D.无限制
4.以下哪个是Java的字符类型?
A.charB.byteC.shortD.int
5.以下关于抽象类说法正确的是()
A.可以实例化B.不能有抽象方法C.可以有非抽象方法D.所有方法必须是抽象的
6.在Java中,要创建一个文件对象,使用的类是()
A.FileReaderB.FileWriterC.FileD.BufferedReader
7.以下哪种排序算法平均时间复杂度最低?
A.冒泡排序B.选择排序C.插入排序D.快速排序
8.Java中,用于抛出异常的关键字是()
A.tryB.catchC.finallyD.throw
9.以下哪个接口用于遍历集合元素?
A.CollectionB.IteratorC.MapD.Set
10.以下关于多态的说法错误的是()
A.一个对象可以有多种形态B.多态通过方法重写和接口实现C.父类引用不能指向子类对象D.提高了代码的可扩展性
多项选择题(每题2分,共10题)
1.以下属于Java基本数据类型的有()
A.booleanB.StringC.doubleD.long
2.以下哪些类位于java.util包中()
A.ArrayListB.HashMapC.DateD.Scanner
3.以下关于Java中的异常处理,正确的有()
A.try块可以没有catch块B.finally块一定会执行C.可以有多个catch块D.catch块可以捕获父类异常
4.以下哪些是Java中的访问修饰符()
A.publicB.privateC.protectedD.default
5.以下关于线程的说法正确的有()
A.线程是程序中的一个执行单元B.多个线程可以并发执行C.可以通过继承Thread类创建线程D.可以通过实现Runnable接口创建线程
6.以下哪些集合类实现了List接口()
A.ArrayListB.LinkedListC.HashSetD.TreeSet
7.以下关于Java中的方法重载,说法正确的有()
A.方法名相同B.参数列表不同C.返回值类型必须相同D.访问修饰符必须相同
8.以下哪些属于Java的输入输出流类()
A.InputStreamB.OutputStreamC.ReaderD.Writer
9.以下关于Java中的类和对象,说法正确的有()
A.类是对象的模板B.对象是类的实例C.一个类可以创建多个对象D.类和对象没有关系
10.以下关于Java中的接口,说法正确的有()
A.接口中可以有抽象方法B.接口中可以有常量C.类可以实现多个接口D.接口可以继承多个接口
判断题(每题2分,共10题)
1.Java是一种面向对象编程语言。()
2.一个Java源文件中可以有多个public类。()
3.数组一旦创建,其长度不能改变。()
4.静态方法可以访问非静态成员变量。()
5.异常处理中,finally块无论是否发生异常都会执行。()
6.HashSet中的元素是有序的。()
7.方法重写时,方法的参数列表必须与父类方法一致。()
8.Java中的字符串是不可变对象。()
9.线程在生命周期中可以处于多种状态。()
10.抽象类不能被实例化。()
简答题(每题5分,共4题)
1.简述Java中的封装。
答案:封装是将对象的属性和行为包装起来,通过访问修饰符控制对其的访问。属性一般设为private,提供public的get和set方法来访问和修改,提高数据安全性和代码可维