Java面试题
各模块面试题汇总
修补匠·瓦力
我在思考怎么让你注意到我
展开
-
十九、JVM面试题
说一下 jvm 的主要组成部分?及其作用? 说一下 jvm 运行时数据区? 说一下堆栈的区别? 队列和栈是什么?有什么区别? 什么是双亲委派模型? 说一下类加载的执行过程? 怎么判断对象是否可以被回收? java 中都有哪些引用类型? 说一下 jvm 有哪些垃圾回收算法? 说一下 jvm 有哪些垃圾回收器? 详细介绍一下 CMS 垃圾回收器? 新生代垃圾回收器和老生代垃圾回收...原创 2019-07-12 09:40:01 · 456 阅读 · 0 评论 -
十八、Redis面试题
redis 是什么?都有哪些使用场景? redis 有哪些功能? redis 和 memecache 有什么区别? redis 为什么是单线程的? 什么是缓存穿透?怎么解决? redis 支持的数据类型有哪些? redis 支持的 java 客户端都有哪些? jedis 和 redisson 有哪些区别? 怎么保证缓存和数据库数据的一致性? redis 持久化有几种方式? re...原创 2019-07-12 09:39:32 · 309 阅读 · 0 评论 -
十七、MySql面试题
数据库的三范式是什么? (1)第一范式:当关系R不能再分解成更基本的数据单位时。(2)第二范式:在满足第一范式下,并且R得所有非主属性都完全依赖于R的每一个候选关键属性。(3)第三范式:在满足第一、第二范式下,属性不依赖于其它非主属性,也就是在满足2NF的基础上,任何非主属性不得传递依赖于主属性。 一张自增表里面总共有 7 条数据,删除了最后 2 条数据,重启 m...原创 2019-07-11 20:17:00 · 164 阅读 · 0 评论 -
十六、Zookeeper面试题
zookeeper 是什么? zookeeper 都有哪些功能? zookeeper 有几种部署模式? zookeeper 怎么保证主从节点的状态同步? 集群中为什么要有主节点? 集群中有 3 台服务器,其中一个节点宕机,这个时候 zookeeper 还可以使用吗? 说一下 zookeeper 的通知机制?...原创 2019-07-12 09:38:50 · 818 阅读 · 0 评论 -
十五、Kafka面试题
kafka 可以脱离 zookeeper 单独使用吗?为什么? kafka 有几种数据保留的策略? kafka 同时设置了 7 天和 10G 清除数据,到第五天的时候消息达到了 10G,这个时候 kafka 将如何处理? 什么情况会导致 kafka 运行变慢? 使用 kafka 集群需要注意什么?...原创 2019-07-12 09:38:21 · 274 阅读 · 0 评论 -
十四、RabbitMQ面试题
rabbitmq 的使用场景有哪些? rabbitmq 有哪些重要的角色? rabbitmq 有哪些重要的组件? rabbitmq 中 vhost 的作用是什么? rabbitmq 的消息是怎么发送的? rabbitmq 怎么保证消息的稳定性? rabbitmq 怎么避免消息丢失? 要保证消息持久化成功的条件有哪些? rabbitmq 持久化有什么缺点? rabbitmq 有几种...原创 2019-07-12 09:37:48 · 332 阅读 · 0 评论 -
十三、Mybatis面试题
mybatis 中 #{}和 ${}的区别是什么? mybatis 有几种分页方式? RowBounds 是一次性查询全部结果吗?为什么? mybatis 逻辑分页和物理分页的区别是什么? mybatis 是否支持延迟加载?延迟加载的原理是什么? 说一下 mybatis 的一级缓存和二级缓存? mybatis 和 hibernate 的区别有哪些? mybatis 有哪些执行器(Ex...原创 2019-07-12 09:37:12 · 180 阅读 · 0 评论 -
十二、Hibernate面试题
为什么要使用 hibernate? 什么是 ORM 框架? hibernate 中如何在控制台查看打印的 sql 语句? hibernate 有几种查询方式? hibernate 实体类可以被定义为 final 吗? 在 hibernate 中使用 Integer 和 int 做映射有什么区别? hibernate 是如何工作的? get()和 load()的区别? 说一下 hib...原创 2019-07-12 09:36:43 · 127 阅读 · 0 评论 -
十一、Spring Boot/Spring Cloud面试题
什么是 spring boot? 为什么要用 spring boot? spring boot 核心配置文件是什么? spring boot 配置文件有哪几种类型?它们有什么区别? spring boot 有哪些方式可以实现热部署? jpa 和 hibernate 有什么区别? 什么是 spring cloud? spring cloud 断路器的作用是什么? spring clo...原创 2019-07-12 09:36:10 · 205 阅读 · 0 评论 -
十、Spring/Spring MVC面试题
为什么要使用 spring? 解释一下什么是 aop? 解释一下什么是 ioc? spring 有哪些主要模块? spring 常用的注入方式有哪些? spring 中的 bean 是线程安全的吗? spring 支持几种 bean 的作用域? spring 自动装配 bean 有哪些方式? spring 事务实现方式有哪些? 说一下 spring 的事务隔离? 说一下 spr...原创 2019-07-11 20:23:52 · 136 阅读 · 0 评论 -
九、设计模式面试题
说一下你熟悉的设计模式? 简单工厂和抽象工厂有什么区别?原创 2019-07-11 20:22:43 · 155 阅读 · 0 评论 -
八、网络面试题
http 响应码 301 和 302 代表的是什么?有什么区别? forward 和 redirect 的区别? 简述 tcp 和 udp的区别? tcp 为什么要三次握手,两次不行吗?为什么? 说一下 tcp 粘包是怎么产生的? OSI 的七层模型都有哪些? get 和 post 请求有哪些区别? 如何实现跨域? 说一下 JSONP 实现原理?...原创 2019-07-11 20:22:11 · 96 阅读 · 0 评论 -
七、异常面试题
throw 和 throws 的区别? final、finally、finalize 有什么区别? try-catch-finally 中哪个部分可以省略? try-catch-finally 中,如果 catch 中 return 了,finally 还会执行吗? 常见的异常类有哪些?...原创 2019-07-12 09:34:28 · 245 阅读 · 0 评论 -
六、Java Web面试题
jsp 和 servlet 有什么区别? jsp 有哪些内置对象?作用分别是什么? 说一下 jsp 的 4 种作用域? session 和 cookie 有什么区别? 说一下 session 的工作原理? 如果客户端禁止 cookie 能实现 session 还能用吗? spring mvc 和 struts 的区别是什么? 如何避免 sql 注入? 什么是 XSS 攻击,如何避免...原创 2019-07-11 20:21:52 · 103 阅读 · 0 评论 -
五、对象拷贝面试题
为什么要使用克隆? 如何实现对象克隆? 深拷贝和浅拷贝区别是什么?原创 2019-07-11 20:21:08 · 151 阅读 · 0 评论 -
四、反射面试题
什么是反射? 反射是java的基本特征之一,允许运行中的java程序获取自身信息,并且可以操作类或对象的内部属性。 什么是 java 序列化?什么情况下需要序列化? (1)简单来说 序列化就是把Java对象储存在某一地方(硬盘、网络),也就是 将对象的内容进行流化。(2)方便于传输、存储(内存中的对象状态保存到一个文件中或者数据库中;套 接字在网络上传送对...原创 2019-07-11 20:20:21 · 141 阅读 · 0 评论 -
三、多线程面试题
并行和并发有什么区别? (1)并行:多个处理器或多核处理器同时处理多个任务。(是真正的物理上的同时发生)(2)并发:多个任务在同一个 CPU 核上,按细分的时间片轮流(交替)执行,从逻辑上来看那些任务是同时执行。(逻辑上的同时发生) 举个例子:排队打饭,当只有一个窗口可以打饭的时候,我们排成了两排,那么这两排只能一边一个来,这就是并发; 如果有两个窗口可以打饭的话,一个队...原创 2019-07-11 20:19:49 · 111 阅读 · 0 评论 -
二、Java容器面试题
java 容器都有哪些? (1)List: ArrayList、LinkedList、Vector;(2)Set: HashSet、TreeSet、LinkedSet;(3)Map: HashMap、HashTable、LinkedHashMap、ConcurrentHashMap; Collection 和 Collections 有什么区别? (1)java...原创 2019-07-11 20:19:03 · 125 阅读 · 0 评论 -
一、JAVASE面试题
一、Java 基础JDK 和 JRE 有什么区别? (1)JDK 全称Java development kit Java语言开发工具。把Java程序设计语言、Java虚拟机、JavaAPI库这三部分统称为JDK,用于支持Java开发的最小开发环境。(2)JRE 全称 Java runtime environment Java运行环境。把JavaAPI类库中的JavaSE ...原创 2019-07-11 20:18:00 · 126 阅读 · 0 评论