秋招金九银十快到了,发现网上很多Java面试题都没有答案,所以花了很长时间搜集整理出来了这套Java面试题大全~ 这套互联网 Java 工程师面试题包括了:MyBatis、ZK、Dubbo、EL、Redis、MySQL、并发编程、Java面试、Spring、微服务、Linux、Springboot、SpringCloud、MQ、Kafka 面试专题 一、Java 基础 1. JDK 和 JRE 有什么区别?
1. == 和 equals 的区别是什么?
== 对于基本类型来说是值比较,对于引用类型来说是比较的是引用;而 equals 默认情况下是引用比较,只是很多类重新了 equals 方法,比如 String、Integer 等把它变成了值比较,所以一般情况下 equals 比较的是值是否相等。
2. 两个对象的 hashCode()相同,则 equals()也一定为 true,对吗?
不对,两个对象的 hashCode()相同,equals()不一定 true。
代码解读:很显然“通话”和“重地”的 hashCode() 相同,然而 equals() 则为 false,因为在散列表中,hashCode()相等即两个键值对的哈希值相等,然而哈希值相等,并不一定能得出键值对相等。
3. final 在 java 中有什么作用?
- final 修饰的类叫最终类,该类不能被继承。
- final 修饰的方法不能被重写。
- final 修饰的变量叫常量,常量必须初始化,初始化之后值就不能被修改。
4. java 中 IO 流分为几种?
按功能来分:输入流(input)、输出流(output)。
按类型来分:字节流和字符流。
字节流和字符流的区别是:字节流按 8 位传输以字节为单位输入输出数据,字符流按 16 位传输以字符为单位输入输出数据。
5. BIO、NIO、AIO 有什么区别?
- BIO:Block IO 同步阻塞式 IO,就是我们平常使用的传统 IO,它的特点是模式简单使用方便,并发处理能力低。
- NIO:New IO 同步非阻塞 IO,是传统 IO 的升级,客户端和服务器端通过 Channel(通道)通讯,实现了多路复用。
- AIO:Asynchronous IO 是 NIO 的升级,也叫 NIO2,实现了异步非堵塞 IO ,异步 IO 的操作基于事件和回调机制。
6. Files的常用方法都有哪些?
-
Files.exists():检测文件路径是否存在。
-
Files.createFile():创建文件。
-
Files.createDirectory():创建文件夹。
-
Files.delete():删除一个文件或目录。
-
Files.copy():复制文件。
-
Files.move():移动文件。
-
Files.size():查看文件个数。
-
Files.read():读取文件。
-
Files.write():写入文件。
二、容器
7. java 容器都有哪些?
常用容器的图录:
8. Collection 和 Collections 有什么区别?
- java.util.Collection 是一个集合接口(集合类的一个顶级接口)。它提供了对集合对象进行基本操作的通用接口方法。Collection接口在Java 类库中有很多具体的实现。Collection接口的意义是为各种具体的集合提供了最大化的统一操作方式,其直接继承接口有List与Set。
- Collections则是集合类的一个工具类/帮助类,其中提供了一系列静态方法,用于对集合中元素进行排序、搜索以及线程安全等各种操作。
9. List、Set、Map 之间的区别是什么?
......
Java面试题目录
全部资料免费分享除此之外还有SpringCloud(31道)、Nginx(28道)、MQ(45道)、Dubbo(38道)、Kafka(12道)、ES(47道)、Linux(38道)等内容。。
** 这里就不一一展示了。**
MyBatis面试篇
Zookeeper面试篇
Java基础篇(45道面试题)
字符串&&集合篇(74道)
并发编程篇(79道)
JVM篇(56道)
数据结构与算法(56道)
MySQL篇(59道)
另外还附带了 52条SQL优化策略 以及一千行SQL命令
Redis篇(48道)
Mongo篇(83道)
Spring篇(58道)
MyBatis篇(47道)
SpringBoot篇(43道)
常用注解篇
除此之外还有SpringCloud(31道)、Nginx(28道)、MQ(45道)、Dubbo(38道)、Kafka(12道)、ES(47道)、Linux(38道)等内容。。
** 这里就不一一展示了。**