Java组件化开发教程!⼯信部java软件开发⼯程师证书
这些⾯试题包含哪些内容?
借花献佛!朋友⼲了5年整的Java⾯试官,给我分享了⼀份⾯试官最爱问的Java⾯试题这份⾯试题包含了 19 个模块:Java 基础、容器、多线程、反射、对象拷贝、Java Web、异常、⽹络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、Mybatis、RabbitMQ、Kafka、Zookeeper、MySql、Redis、JVM 等等等
本⾯试题解决的痛点
稀缺性,提供真实的,覆盖⾯全的⾯试集合,包含 200+ ⾯试题。
权威性,解决了⽬前市场上答案太旧甚⾄是错误的问题。
真实性,这份⾯试题是企业常⽤的,不会偏离实际。
易理解性,通俗易懂条理清晰,部分⾯试题包含题⽬解析和代码⽰例,让⼩⽩也能看的懂。
节约时间,屏蔽⽆效重复信息,为真正需要⾯试题的⼈节省检索时间。
适宜阅读⼈
待⾯试的 初/中/⾼级 Java 程序员
java用什么软件运行
查漏补缺的⼈
想要不断完善和扩充⾃⼰ Java 技术栈的⼈
Java ⾯试官
⾯试题展⽰
⼀、Java 基础
1.JDK 和 JRE 有什么区别?
2.== 和 equals 的区别是什么?
3.两个对象的 hashCode()相同,则 equals()也⼀定为 true,对吗?
4.final 在 java 中有什么作⽤?
5.java 中的 und(-1.5) 等于多少?
6.String 属于基础的数据类型吗?
7.java 中操作字符串都有哪些类?它们之间有什么区别?
8.String str="i"与 String str=new String(“i”)⼀样吗?
9.如何将字符串反转?
10.String 类的常⽤⽅法都有那些?
11.抽象类必须要有抽象⽅法吗?
12.普通类和抽象类有哪些区别?
13.抽象类能使⽤ final 修饰吗?
14.接⼝和抽象类有什么区别?
15.java 中 IO 流分为⼏种?
16.BIO、NIO、AIO 有什么区别?
17.Files的常⽤⽅法都有哪些?
⼆、容器
18.java 容器都有哪些?
19.Collection 和 Collections 有什么区别?
20.List、Set、Map 之间的区别是什么?
21.HashMap 和 Hashtable 有什么区别?
22.如何决定使⽤ HashMap 还是 TreeMap?
23.说⼀下 HashMap 的实现原理?
24.说⼀下 HashSet 的实现原理?
25.ArrayList 和 LinkedList 的区别是什么?
26.如何实现数组和 List 之间的转换?
27.ArrayList 和 Vector 的区别是什么?
28.Array 和 ArrayList 有何区别?
29.在 Queue 中 poll()和 remove()有什么区别?
30.哪些集合类是线程安全的?
31.迭代器 Iterator 是什么?
32.Iterator 怎么使⽤?有什么特点?
33.Iterator 和 ListIterator 有什么区别?
34.怎么确保⼀个集合不能被修改?
三、多线程
36.线程和进程的区别?
37.守护线程是什么?
38.创建线程有哪⼏种⽅式?
39.说⼀下 runnable 和 callable 有什么区别?
40.线程有哪些状态?
41.sleep() 和 wait() 有什么区别?
43.线程的 run()和 start()有什么区别?
44.创建线程池有哪⼏种⽅式?
45.线程池都有哪些状态?
46.线程池中 submit()和 execute()⽅法有什么区别?
47.在 java 程序中怎么保证多线程的运⾏安全?
48.多线程锁的升级原理是什么?
49.什么是死锁?
50.怎么防⽌死锁?
51.ThreadLocal 是什么?有哪些使⽤场景?
52.说⼀下 synchronized 底层实现原理?
53.synchronized 和 volatile 的区别是什么?
54.synchronized 和 Lock 有什么区别?
55.synchronized 和 ReentrantLock 区别是什么?
56.说⼀下 atomic 的原理?
四、反射
57.什么是反射?
58.什么是 java 序列化?什么情况下需要序列化?
59.动态代理是什么?有哪些应⽤?
60.怎么实现动态代理?
五、对象拷贝
61.为什么要使⽤克隆?
62.如何实现对象克隆?
63.深拷贝和浅拷贝区别是什么?
六、Java Web
65.jsp 有哪些内置对象?作⽤分别是什么?
66.说⼀下 jsp 的 4 种作⽤域?
67.session 和 cookie 有什么区别?
68.说⼀下 session 的⼯作原理?
69.如果客户端禁⽌ cookie 能实现 session 还能⽤吗?
70.spring mvc 和 struts 的区别是什么?
71.如何避免 sql 注⼊?
72.什么是 XSS 攻击,如何避免?
73.什么是 CSRF 攻击,如何避免?
七、异常
74.throw 和 throws 的区别?
75.final、finally、finalize 有什么区别?
<-catch-finally 中哪个部分可以省略?
<-catch-finally 中,如果 catch 中 return 了,finally 还会执⾏吗?
78.常见的异常类有哪些?
⼋、⽹络
79.http 响应码 301 和 302 代表的是什么?有什么区别?
80.forward 和 redirect 的区别?
81.简述 tcp 和 udp的区别?

83.说⼀下 tcp 粘包是怎么产⽣的?
84.OSI 的七层模型都有哪些?
< 和 post 请求有哪些区别?
86.如何实现跨域?
87.说⼀下 JSONP 实现原理?
九、设计模式
88.说⼀下你熟悉的设计模式?
89.简单⼯⼚和抽象⼯⼚有什么区别?
⼗、Spring/Spring MVC
90.为什么要使⽤ spring?
91.解释⼀下什么是 aop?
92.解释⼀下什么是 ioc?
93.spring 有哪些主要模块?
94.spring 常⽤的注⼊⽅式有哪些?
95.spring 中的 bean 是线程安全的吗?
96.spring ⽀持⼏种 bean 的作⽤域?
97.spring ⾃动装配 bean 有哪些⽅式?
98.spring 事务实现⽅式有哪些?
99.说⼀下 spring 的事务隔离?
100.说⼀下 spring mvc 运⾏流程?
101.spring mvc 有哪些组件?
102.@RequestMapping 的作⽤是什么?
103.@Autowired 的作⽤是什么?
⼗⼀、Spring Boot/Spring Cloud
104.什么是 spring boot?
105.为什么要⽤ spring boot?
106.spring boot 核⼼配置⽂件是什么?
107.spring boot 配置⽂件有哪⼏种类型?它们有什么区别?
108.spring boot 有哪些⽅式可以实现热部署?
109.jpa 和 hibernate 有什么区别?
110.什么是 spring cloud?
111.spring cloud 断路器的作⽤是什么?
112.spring cloud 的核⼼组件有哪些?
⼗⼆、Hibernate
113.为什么要使⽤ hibernate?
114.什么是 ORM 框架?
115.hibernate 中如何在控制台查看打印的 sql 语句?
116.hibernate 有⼏种查询⽅式?
117.hibernate 实体类可以被定义为 final 吗?
118.在 hibernate 中使⽤ Integer 和 int 做映射有什么区别?
119.hibernate 是如何⼯作的?
<()和 load()的区别?
121.说⼀下 hibernate 的缓存机制?
122.hibernate 对象有哪些状态?
123.在 hibernate 中 getCurrentSession 和 openSession 的区别是什么?
124.hibernate 实体类必须要有⽆参构造函数吗?为什么?
⼗三、Mybatis