40 Star 499 Fork 158

磊哥 / interview

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
贡献代码
同步代码
取消
提示: 由于 Git 不支持空文件夾,创建文件夹后会生成空的 .keep 文件
Loading...
README
Apache-2.0

此仓库以停止更新,最新版的 Java 面试题,请访问我的网站:www.javacn.site

Java 最新常见面试题,请访问我的网站:www.javacn.site

Java 最新常见面试题,请访问我的网站:www.javacn.site

Java 最新常见面试题,请访问我的网站:www.javacn.site

Java 最新常见面试题,请访问我的网站:www.javacn.site


97:限流算法有哪些?

96:熔断和降级有什么区别?

95:JVM 如何确定死亡对象?

94:说一下 Java 虚拟机的内存布局?

93:什么是双亲委派模型?

92:类是如何加载的?

91:MD5 加密安全吗?

90:过滤器和拦截器有什么区别?

89:事务隔离级别和传播机制有什么区别?

88:加入事务和嵌套事务有什么区别?

87:说一下 Spring 事务传播机制?

86:SpringBoot 事务不回滚?怎么解决?

85:为什么事务@Transactional会失效?

84:Spring 有几种事务隔离级别?

83:什么情况会导致@Transactional事务失效?

82:SpringBoot 是如何操作事务的?

81:什么是跨域问题?如何解决?

80:说一下 Spring 中 Bean 的生命周期?

79:Bean 作用域是啥?它有几种类型?

78:@Autowired 和 @Resource 有什么区别?

77:Spring 依赖注入有几种?各有什么优缺点?

76:${} 和 #{} 有什么区别?

75:SpringBoot 有几种读取配置文件的方法?

74:properties和yml有什么区别?

73:IoC 和 DI 有什么区别?

72:输入URL之后会执行什么流程?

71:GET 和 POST 有什么区别?

70:什么是粘包和半包?怎么解决?

69:TCP 可靠吗?为什么?

68:为什么 TCP 需要 3 次握手?

67:说一下 TCP/IP 协议?以及每层的作用?

66:请求转发和请求重定向有什么区别?

65:HTTPS有什么优点?说一下它的执行流程?

64:了解 HTTP 协议吗?

63:MySQL 中如何去重?

62:group by 有哪些注意事项?

61:说一下MySQL事务隔离级别?

60:什么情况会导致 MySQL 索引失效?

59:一个表中可以有多个自增列吗?

58:truncate、delete和drop的6大区别!

57:聚簇索引=主键索引吗?

56:聚簇索引和非聚簇索引有什么区别?

55:delete、drop、truncate有什么区别?

54:MySQL 常用引擎有哪些?

53:常见的 HTTP 状态码有哪些?

52:什么是三范式?它有什么用?

51:为什么单例一定要加 volatile?

50:单例模式有几种写法?

49:说一下 JUC 中的 Exchange 交换器?

48:死锁的排查工具有哪些?

47:死锁产生的原因有哪些?

46:公平锁和非公平锁有什么区别?

45:为什么要用读写锁?它有什么优点?

44:volatile 有什么用?

43:lock、tryLock、lockInterruptibly有什么区别?

42:synchronized和ReentrantLock有什么区别?

41:notify是随机唤醒吗?

40:线程休眠的方法有几种?

39:synchronized底层是如何实现的?

38:synchronized有几种用法?

37:线程安全问题的解决方案有哪些?

36:线程安全问题是怎么产生的?

35:如何判断线程池已经执行完所有任务了?

34:如何使用线程池执行定时任务?

33:线程池有哪些状态?状态是如何转换的?

32:为什么创建线程池一定要用ThreadPoolExecutor?

31:什么是守护线程?它和用户线程有什么区别?

30:线程池是如何执行的?拒绝策略有哪些?

29:说一下线程池7个参数的含义?

28:线程池有几种创建方式?推荐使用哪种?

27:为什么需要线程池?什么是池化技术?

26:如何正确停止线程?

25:sleep方法和wait方法有什么区别?

24:为什么wait和notify必须放在synchronized中?

23:说一下线程生命周期,以及转换过程?

22:为什么start方法不能重复调用?而run方法却可以?

21:有哪些创建线程的方法?推荐使用哪种?

20:进程和线程有什么区别?

19:为什么ConcurrentHashMap不允许插入null值?

18:为什么ConcurrentHashMap是线程安全的?

17:HashMap除了死循环之外,还有什么问题?

16:为什么HashMap会产生死循环?

15:说一下HashMap底层实现?及元素添加流程?

14:方法重写和方法重载有什么区别?

13.方法优先调用可选参数还是固定参数?

12.为什么不同返回类型不算方法重载?

11.方法重写时需要注意哪些问题?

10.this和super有什么区别?this能调用到父类吗?

9.接口和抽象类有什么区别?

8.HashSet如何保证元素不重复?

7.如何实现 List 集合去重?

6.元素排序Comparable和Comparator有什么区别?

5.HashMap有几种遍历方法?推荐使用哪种?

4.重写 equals 时为什么一定要重写 hashCode?

3.final、finally、finalize 有什么区别?

2.说一下final关键字和final的4种用法?

1.int和Integer有什么区别?为什么要有包装类?


208 面试题解析

19 个模块,分别是: Java 基础、容器、多线程、反射、对象拷贝、Java Web 模块、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM ,如下图所示:

目录

Java 基础部分面试题

容器部分面试题

多线程部分面试题

反射部分面试题

对象拷贝部分面试题

Java Web 模块部分面试题

异常部分面试题网络

设计模式部分面试题

Spring/Spring MVC部分面试题

Spring Boot/Spring Cloud部分面试题

Hibernate部分面试题

Mybatis部分面试题

RabbitMQ部分面试题

Kafka部分面试题

Zookeeper部分面试题

MySql部分面试题

Redis部分面试题

JVM部分面试题

介绍

此开源项目以“Java 面试题”为切入点,为程序员提供整个职业生涯的服务。这个项目前期的重点是收集和整理一些高质量的面试题,为程序员的职业发展奉献一点力量,更希望聚集更多和我们志趣相投的朋友,来为更多的程序员提供服务。

为什么要做这个开源项目?

学的好,不如面的好。

掌握技能和经验固然重要,但面试更重要,因为它才是涨薪的关键。拥有高超的技术 + 超强的面试能力 = 符合自己的高薪工作,而本项目要解决的就是后者。让我们一起卷起来,为了理想中的好工作。

投稿

众人拾材火焰高,我们渴望更多的人参与进来,为了帮助更多的人找到理想的工作而奉献自己的一份力量。

投稿方式:只需要在本项目下提交 ISsues 进行投稿,为了鼓励大家的踊跃参加,您提交的投稿一经采纳,我们会奖励给投稿人 50 元的购书基金,直接发放现金到您的微信。

Apache License Version 2.0, January 2004 http://www.apache.org/licenses/ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 1. Definitions. "License" shall mean the terms and conditions for use, reproduction, and distribution as defined by Sections 1 through 9 of this document. "Licensor" shall mean the copyright owner or entity authorized by the copyright owner that is granting the License. "Legal Entity" shall mean the union of the acting entity and all other entities that control, are controlled by, or are under common control with that entity. For the purposes of this definition, "control" means (i) the power, direct or indirect, to cause the direction or management of such entity, whether by contract or otherwise, or (ii) ownership of fifty percent (50%) or more of the outstanding shares, or (iii) beneficial ownership of such entity. "You" (or "Your") shall mean an individual or Legal Entity exercising permissions granted by this License. "Source" form shall mean the preferred form for making modifications, including but not limited to software source code, documentation source, and configuration files. "Object" form shall mean any form resulting from mechanical transformation or translation of a Source form, including but not limited to compiled object code, generated documentation, and conversions to other media types. "Work" shall mean the work of authorship, whether in Source or Object form, made available under the License, as indicated by a copyright notice that is included in or attached to the work (an example is provided in the Appendix below). "Derivative Works" shall mean any work, whether in Source or Object form, that is based on (or derived from) the Work and for which the editorial revisions, annotations, elaborations, or other modifications represent, as a whole, an original work of authorship. For the purposes of this License, Derivative Works shall not include works that remain separable from, or merely link (or bind by name) to the interfaces of, the Work and Derivative Works thereof. "Contribution" shall mean any work of authorship, including the original version of the Work and any modifications or additions to that Work or Derivative Works thereof, that is intentionally submitted to Licensor for inclusion in the Work by the copyright owner or by an individual or Legal Entity authorized to submit on behalf of the copyright owner. For the purposes of this definition, "submitted" means any form of electronic, verbal, or written communication sent to the Licensor or its representatives, including but not limited to communication on electronic mailing lists, source code control systems, and issue tracking systems that are managed by, or on behalf of, the Licensor for the purpose of discussing and improving the Work, but excluding communication that is conspicuously marked or otherwise designated in writing by the copyright owner as "Not a Contribution." "Contributor" shall mean Licensor and any individual or Legal Entity on behalf of whom a Contribution has been received by Licensor and subsequently incorporated within the Work. 2. Grant of Copyright License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable copyright license to reproduce, prepare Derivative Works of, publicly display, publicly perform, sublicense, and distribute the Work and such Derivative Works in Source or Object form. 3. Grant of Patent License. Subject to the terms and conditions of this License, each Contributor hereby grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work, where such license applies only to those patent claims licensable by such Contributor that are necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work to which such Contribution(s) was submitted. If You institute patent litigation against any entity (including a cross-claim or counterclaim in a lawsuit) alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed. 4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions: (a) You must give any other recipients of the Work or Derivative Works a copy of this License; and (b) You must cause any modified files to carry prominent notices stating that You changed the files; and (c) You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and (d) If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License. 5. Submission of Contributions. Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions. 6. Trademarks. This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file. 7. Disclaimer of Warranty. Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License. 8. Limitation of Liability. In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages. 9. Accepting Warranty or Additional Liability. While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability. END OF TERMS AND CONDITIONS APPENDIX: How to apply the Apache License to your work. To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets "[]" replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same "printed page" as the copyright notice for easier identification within third-party archives. Copyright [yyyy] [name of copyright owner] Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

简介

400+ 道 Java 常见面试题和解析,持续更新... 展开 收起
Java
Apache-2.0
取消

发行版

暂无发行版

贡献者

全部

近期动态

加载更多
不能加载更多了
Java
1
https://gitee.com/mydb/interview.git
git@gitee.com:mydb/interview.git
mydb
interview
interview
master

搜索帮助

14c37bed 8189591 565d56ea 8189591