LZ 认为,对于 Java 面试以及进阶的最佳学习方法莫过于刷题+博客+书籍+总结,前三者 LZ 将淋漓尽致地挥毫于这篇文章中,至于总结在于个人,实际上越到后面你会发现面试并不难,其次就是在刷题的过程中有没有去思考,刷题只是次之,这又是一个层次了,这里暂时不提后面再谈。
LZ 总结了一系列大厂面试中常问的面试技术点,深入解析以及答案,将为最近准备面试的各开发者去大厂保驾护航,
何谓面试?LZ 所理解的面试,它是一个过程,是不断沉淀、不断总结、善于传达自己的专业领域技术以及解决问题能力的过程。以下是 LZ 总结的一些面试题,文中如有错误,恳请批评指正!
Java 基础
-
⾯向对象和⾯向过程的区别
-
Java 语⾔有哪些特点?
-
关于 JVM JDK 和 JRE 最详细通俗的解答
-
Oracle JDK 和 OpenJDK 的对⽐
-
Java 和 C++的区别?
-
什么是 Java 程序的主类 应⽤程序和⼩程序的主类有何不同?
-
Java 应⽤程序与⼩程序之间有哪些差别?
-
字符型常量和字符串常量的区别?
-
构造器 Constructor 是否可被 override?
-
重载和重写的区别
-
Java ⾯向对象编程三⼤特性: 封装 继承 多态
-
String StringBuffer 和 StringBuilder 的区别是什么? String 为什么是不可变的?
-
⾃动装箱与拆箱
-
在⼀个静态⽅法内调⽤⼀个⾮静态成员为什么是⾮法的?
-
在 Java 中定义⼀个不做事且没有参数的构造⽅法的作⽤
-
import java 和 javax 有什么区别?
-
接⼝和抽象类的区别是什么?
-
成员变量与局部变量的区别有哪些?
-
创建⼀个对象⽤什么运算符?对象实体与对象引⽤有何不同?
-
什么是⽅法的返回值?返回值在类的⽅法⾥的作⽤是什么?
-
⼀个类的构造⽅法的作⽤是什么? 若⼀个类没有声明构造⽅法,该程序能正确执
-
⾏吗? 为什么?
-
构造⽅法有哪些特性?
-
静态⽅法和实例⽅法有何不同
-
对象的相等与指向他们的引⽤相等,两者有什么不同?
-
在调⽤⼦类构造⽅法之前会先调⽤⽗类没有参数的构造⽅法,其⽬的是?
-
== 与 equals(重要)
-
hashCode 与 equals (重要)
-
为什么 Java 中只有值传递?
-
简述线程、程序、进程的基本概念。以及他们之间关系是什么?
-
线程有哪些基本状态?
-
关于 fifinal 关键字的⼀些总结
-
Java 中的异常处理
-
Java 序列化中如果有些字段不想进⾏序列化,怎么办?
-
获取⽤键盘输⼊常⽤的两种⽅法
-
Java 中 IO 流
-
常⻅关键字总结:static,fifinal,this,super
-
深拷⻉ vs 浅拷⻉
Java 基础题答案解析
Java 集合
-
说说 List,Set,Map 三者的区别?
-
Arraylist 与 LinkedList 区别?
-
ArrayList 与 Vector 区别呢?为什么要⽤Arraylist 取代 Vector 呢?
-
说⼀说 ArrayList 的扩容机制吧 2.2.5 HashMap 和 Hashtable 的区别
-
HashMap 和 HashSet 区别
-
HashSet 如何检查重复
-
HashMap 的底层实现
-
HashMap 的⻓度为什么是 2 的幂次⽅
-
Hash