上一篇文章分享了我的 Java 转行之路,本文主要分享 Java 后端面试高频题目,重要程度按照背景颜色进行区分。由于个人水平有限,如若文章中有错误之处,敬请指正。
本文按照我平时复习的模块进行题目划分,由于题目较多,未贴出答案。如果想要答案版资料,可加我的微信(微信号:pcwl_Java),备注:面试题。
一、Java基础
-
解释下什么是面向对象?面向对象和面向过程的区别?
-
面向对象的三大特性?分别解释下?
-
JDK、JRE、JVM 三者之间的关系?
-
重载和重写的区别?
-
Java 中是否可以重写一个 private 或者 static 方法?
-
构造器是否可以被重写?
-
构造方法有哪些特性?
-
在 Java 中定义一个不做事且没有参数的构造方法有什么作用?
-
Java 中创建对象的几种方式?
-
抽象类和接口有什么区别?
-
静态变量和实例变量的区别?
-
成员变量和局部变量的区别?
-
short s1 = 1;s1 = s1 + 1;有什么错?那么 short s1 = 1; s1 += 1;呢?有没有错误?
-
Integer 和 int 的区别?
-
装箱和拆箱
-
switch 语句能否作用在 byte 上,能否作用在 long 上,能否作用在 String 上?
-
字节和字符的区别?
-
String 为什么要设计为不可变类?
-
String、StringBuilder、StringBuffer 的区别?
-
String str = "i" 与 String str = new String("i") 一样吗?
-
String 类的常用方法都有那些?
-
final 修饰 StringBuffer 后还可以 append 吗?
-
Object 的常用方法有哪些?
-
为什么 wait/notify 方法放在 Object 类中而不是 Thread 类中?
-
final、finally、finalize 的区别?
-
finally 块中的代码什么时候被执行?finally 是不是一定会被执行到?
-
try-catch-finally 中哪个部分可以省略?
-
try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗?
-
static 关键字的作用?
-
super 关键字的作用?
-
transient关键字的作用?
-
== 和 equals 的区别?
-
两个对象的 hashCode() 相同,则 equals() 也一定为 true 吗?
-
为什么重写 equals() 就一定要重写 hashCode() 方法?
-
& 和 && 的区别?
-
Java 中的参数传递时传值呢?还是传引用?
-
Java 中的 Math.round(-1.5) 等于多少?
-
两个数的异或结果是什么?
-
error 和 exception 的区别?
-
throw 和 throws 的区别?
-
常见的异常类有哪些?
-
运行时异常与受检异常有何异同?
-
主线程可以捕获到子线程的异常吗?
-
Java 的泛型是如何工作的 ? 什么是类型擦除 ?
-
什么是泛型中的限定通配符和非限定通配符 ?
-
List<? extends T> 和 List <? super T> 之间有什么区别 ?
-
如何实现对象的克隆?
-
深克隆和浅克隆的区别?
-
什么是 Java 的序列化,如何实现 Java 的序列化?
-
Java 中的反射是什么意思?有哪些应用场景?
-
反射的优缺点?
-
Java 中的动态代理是什么?有哪些应用?
-
怎么实现动态代理?
-
Java 中的 IO 流的分类?说出几个你熟悉的实现类?
-
字节流和字符流有什么区别?
-
BIO、NIO、AIO 有什么区别?
二、Java集合类
-
Java 中常用的容器有哪些?
-
ArrayList 和 LinkedList 的区别?
-
ArrayList 的扩容机制?
-
Array 和 ArrayList 有何区别?什么时候更适合用 Array?
-
HashMap 的实现原理/底层数据结构?JDK1.7 和 JDK1.8
-
HashMap 的 get、put、resize 方法的过程?
-
HashMap 的 size 为什么必须是 2 的整数次方?
-
HashMap 多线程死循环问题?
-
HashMap 的 get 方法能否判断某个元素是否在 Map 中?
-
HashMap 与 HashTable/ConcurrentHashMap 的区别是什么?
-
HashTable 和 ConcurrentHashMap 的区别是什么?
-
ConcurrentHashMap 的实现原理是什么?
-
HashSet 的实现原理?怎么保证元素不重复的?
-
LinkedHashMap 的实现原理?
-
Iterator 怎么使用?有什么