Java研发常见面试题

Java基础

  1. Hashmap数据结构是怎样的?如何新增键值对?是否线程安全的?什么是hash冲突?如何解决hash冲突?什么情况下发生扩容?如何扩容?为什么引入红黑树?什么时候会出现链表转红黑树?
  2. 用什么Map是线程安全的?数据结构怎样的?如何保证线程的安全?说说底层如何实现?
  3. ThreadLocal底层实现是什么?
  4. 什么是乐观锁?什么是悲观锁?分别如何实现?实践中如何选择?原因是什么?
  5. Lock与synchronized有什么区别?底层实现如何?AQS?CAS?说说synchronized锁升级是怎么回事?
  6. 说说线程池怎么使用的?有哪些参数?执行过程是怎么样的?他的参数如何设置?拒绝策略有哪些?如何得到线程执行结果?
  7. 说说有哪些阻塞队列?为什么要用阻塞队列?如何实现阻塞队列?
  8. volitile有哪些特性?工作原理是什么?
  9. 创建线程有哪些方式?如何返回线程执行的结果?
  10. 你知道有哪些IO么?他们有什么特点?什么场景会使用到?

Mysql

  1. 你知道mysql有哪些存储引擎么?默认使用哪个?二者区别有哪些?
  2. 什么是索引?为什么要用索引?常见的索引数据结构有哪些?mysql采用的什么数据结构?为什么?
  3. 什么是主键索引和辅助索引?工作原理是什么?
  4. 你是如何优化sql的?
  5. 事务有哪些特性?如何保证数据的一致性?
  6. 数据库的事务隔离级别有哪些?会出现哪些问题?解决了哪些问题?
  7. 什么是MVCC?Mysql中innodb如何解决幻读的问题?
  8. 谈一谈分库分表的实践?
  9. 分页查询如何优化(千万级的数据表)

Spring

  1. Spring用到的两大技术是什么?分别指什么?
  2. SpringBean的生命周期?具体谈谈如何创建bean?如何解决循环依赖问题?
  3. 说说Spring的AOP用到哪些技术?底层怎样实现的?
  4. 学习Spring框架过程中,用到了哪些设计模式?
  5. 什么是单例模式?实现方式有哪几种?有什么区别(优缺点)?
  6. 说说SpringMVC的执行过程是怎么样的?
  7. Spring定义的事务传播特性有哪些?工作原理是什么?
  8. bean是安全的么?如何实现安全?线程隔离使用什么?

Dubbo

  1. 谈谈对dubbo的理解?为什么要用dubbo?它与http调用有哪些优势劣势?
  2. 什么是rpc?
  3. dubbo的工作原理如何?
  4. dubbo的服务发布过程怎样的?
  5. dubbo的服务消费过程怎样的?
  6. 有哪些注册中心?推荐使用什么?
  7. 如何进行容错容灾?
  8. dubbo的超时重试机制是怎样的?

Kafka

  1. 你知道的消息队列中间件有哪些?他们有什么区别?
  2. Kafka的工作原理如何?你为什么会选择kafka?
  3. kafka如何保证高吞吐、高并发?
  4. 你工作中有用kafka的特性解决什么问题?

Redis

  1. 为什么要用redis?他有哪些特性?
  2. 常见的数据结构有哪些?你都用到过哪些?
  3. redis的分布式锁如何实现的?会有哪些问题?
  4. 具体谈一谈redis集群的部署架构有哪些?有什么优缺点?
  5. 说说redis的持久化方式有哪些?分别的工作原理如何?
  6. 什么是缓存穿透?如何避免?什么是缓存雪崩?何如避免?什么是穿刺?

JVM

  1. 讲一下jvm的内存模型?具体介绍下每一块存储的信息?
  2. GC分为哪些区?GC是如何发生的?
  3. 如何确定垃圾?什么是GC ROOT?哪些对象可以作为GC ROOT?
  4. 有哪些垃圾回收算法?分别怎么工作的?
  5. 有哪些垃圾收集器?如何工作的?
  6. 请说说几种导致OOM的场景?如何排查生产环境OOM问题?
  7. 类的加载过程?类加载器有哪些?什么是双亲委派模型?双亲委派机制可以规避么?

网络协议

  1. http与https的区别?https的工作原理?
  2. 什么三次握手四次挥手?为什么需要三次握手四次挥手?
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值