java常见面试题及答案20
单项选择题(每题2分,共10题)
1.Java中定义常量的关键字是()
A.finalB.staticC.constD.volatile
2.以下哪种集合是线程安全的()
A.ArrayListB.HashMapC.VectorD.HashSet
3.多态的实现依赖于()
A.继承B.接口C.方法重载D.以上都是
4.Java中基本数据类型int占()字节
A.1B.2C.4D.8
5.以下哪个是正确的创建线程方式()
A.继承Thread类B.实现Runnable接口C.以上两种都可以D.以上都不对
6.字符串常量池位于()
A.堆B.栈C.方法区D.程序计数器
7.以下关于抽象类说法正确的是()
A.可以实例化B.不能有抽象方法C.子类必须重写所有抽象方法D.以上都不对
8.以下运算符优先级最高的是()
A.+B.C.()D.
9.以下哪个类用于处理输入输出流()
A.MathB.StringC.InputStreamD.ArrayList
10.一个Java源文件中最多可以有()个public类
A.0B.1C.2D.多个
多项选择题(每题2分,共10题)
1.以下属于Java集合框架的有()
A.ListB.SetC.MapD.Array
2.以下哪些是异常处理的关键字()
A.tryB.catchC.finallyD.throw
3.以下关于接口的说法正确的是()
A.接口中可以有抽象方法B.接口中可以有常量C.一个类可以实现多个接口D.接口可以继承多个接口
4.以下哪些是Java的基本数据类型()
A.byteB.shortC.charD.boolean
5.以下关于线程状态的有()
A.NEWB.RUNNABLEC.BLOCKEDD.TERMINATED
6.以下哪些方法属于String类()
A.length()B.substring()C.equals()D.add()
7.以下关于类和对象说法正确的是()
A.类是对象的模板B.对象是类的实例C.一个类可以创建多个对象D.类和对象没有关系
8.以下哪些属于输入流()
A.FileInputStreamB.BufferedReaderC.OutputStreamD.PrintWriter
9.以下哪些是访问修饰符()
A.publicB.privateC.protectedD.default
10.以下关于泛型说法正确的是()
A.提高代码的类型安全性B.可以减少类型转换C.只在编译期起作用D.运行时类型擦除
判断题(每题2分,共10题)
1.Java中所有类都直接或间接继承自Object类。()
2.数组一旦创建,大小就不能改变。()
3.方法重载要求方法名相同,参数列表不同。()
4.接口中可以有非抽象方法。()
5.静态变量属于类,而不属于某个具体对象。()
6.异常一旦抛出就无法处理。()
7.HashSet可以存储重复元素。()
8.多线程中synchronized关键字可以保证代码块或方法在同一时刻只能被一个线程访问。()
9.String类是不可变类。()
10.一个类中可以有多个构造函数。()
简答题(每题5分,共4题)
1.简述Java的垃圾回收机制。
答案:垃圾回收机制自动回收不再使用的对象所占用的内存空间。通过标记清除、标记整理、复制算法等,定期扫描堆内存,回收不再被引用的对象内存,减轻程序员手动管理内存负担,提高内存使用效率。
2.简述方法重载和方法重写的区别。
答案:方法重载在同一类中,方法名相同但参数列表不同(参数个数、类型或顺序),与返回值类型无关;方法重写发生在父子类间,子类重写父类方法,方法签名(方法名、参数列表、返回值类型)必须相同,访问权限不能更严格。
3.简述Java中的多态。
答案:Java多态