我给大家的金三银四准备了100道花时间搜罗的高频Java面试题,大家不要太感动,关注+转发+收藏就行。

这次只放出九十道,剩下10道准备找认识的几位面试官去要,希望不会被拒绝。

这些题我认为认真思考还是很有价值的,面题及答案已全部整理成PDF版。

需要获取得话麻烦一键三连+评论,然后添加VX(tkzl6666)即可免费领取

好了不多逼逼了,上菜

90道高频面试题

  1. 自我介绍一下
  2. 项目中用到的技术栈介绍一下
  3. 项目中做的认为比较满意的部分讲一讲?
  4. 如果这个技术方案让你重新设计,你怎么做?
  5. Java集合类都有哪些?平常用到哪些?
  6. ArrayList 和 LinkedList 区别?
  7. HashMap 实现的数据结构和扩容过程?
  8. ArrayList 和 LinkedList 区别?你平常怎么选择?
  9. 异常类都有哪些?Exception 和 Error什么区别?
  10. Synchronized 原理,锁膨胀过程 ?
  11. Synchronized 和 Reentrantlock 区别?
  12. 线程池原理是怎样的?
  13. 分布式事务一致性怎么实现?
  14. 消息乱序遇到过吗?怎么解决的?
  15. ThreadLocal 用过吗?实现机制?
  16. wait、sleep区别?
  17. 反射用过吗?什么原理?
  18. 动态代理了解吗?实现的二种方式以及区别
  19. 单例模式了解吗?实现一个线程安全的单例模式?
  20. 无界队列和有界队列?
  21. AQS 知道吗?讲讲你的理解
  22. volatile 用过吗?
  23. 实现一个生产者消费者模式
  24. Java内存模型清楚吗?
  25. 遇到过线上性能问题吗?怎么排查原因的?
  26. 网络问题遇到过吗?TIME_WAIT和CLOSE_WAIT的区别
  27. 三次握手讲一讲
  28. CountDownLatch、Seamphone、CyclicBarrier 都了解吗?
  29. private、protected、public、关键字你平常怎么用的?
  30. Java是值传递还是引用传递,写一段对象拷贝的代码
  31. 内存回收机制了解吗?
  32. 新生代和老生代区别?
  33. 垃圾回收器有哪几种? 你们生产环境用的哪种或哪几种?
  34. Java线程和操作系统线程什么关系?
  35. 线程有几种状态,线程生命周期讲讲
  36. MySQL 索引使用什么数据结构?为什么用 B+做索引?
  37. 什么是最左匹配原则?
  38. 在建表的时候如何设计索引的?有没有做过索引优化 ?
  39. MyBatis用过吗? 一二级缓存清楚吗?
  40. MySQL 主从同步怎么做的?binlog清楚吗?
  41. MySQL 有没有做分库分表?怎么设计的?
  42. 用userId做的分库分表,现在需要用电话号码查询怎么办?
  43. 你们用的什么日志框架,log4j 和logback吗?和slf4j什么区别?
  44. redis 的String 是怎么实现的?为什么不直接用c的字符串?
  45. redis 是单线程的吗?为什么这么快?
  46. redis 中有哪几种数据结构?使用场景是怎样的?
  47. 类加载机制了解吗?
  48. 什么是双亲委派模式
  49. concurrenthashmap 怎么实现线程安全访问的?
  50. Spring AOP与IOC的实现原理
  51. Spring的BeanFactory和FactoryBean的区别
  52. 讲讲Spring中一个Bean的加载流程?
  53. Spring的事务的隔离级别?
  54. Autowired注解的原理?
  55. 用的什么rpc框架
  56. 幂等了解吗?你们系统怎么做幂等的
  57. 分布式限流了解吗?如何实现的
  58. 消息中间件如何解决消息丢失、消息乱序问题?
  59. 怎么预防缓存雪崩、缓存击穿?
  60. 分布式锁的实现?
  61. 实现一个分布式自增id?
  62. 海量url怎么去重?
  63. Redis有没有做持久化,怎么做的?
  64. 工作中用到了哪些设计模式?
  65. 什么是一致性hash?
  66. 项目中用过什么设计模式?例如模板方法、策略模式、责任链模式吗?
  67. MySQL InnoDB存储的文件结构
  68. 讲讲乐观锁和悲观锁
  69. cpu 100% 遇到过吗?怎么解决的
  70. 更新数据机制?先更新缓存还是DB?
  71. MySQL中回表是怎样的过程
  72. 设计一个抢红包的程序?
  73. DP背包问题?
  74. Minor GC 与 Full GC 分别在什么时候发生?
  75. 你怎么理解Java 的面向对象?
  76. 谈谈对Spring IOC和DI的理解?
  77. 你了解DDD领域建模吗?
  78. 线程调用start 和 run 什么区别?会有什么效果
  79. 中序遍历二叉树
  80. 之前项目遇到过什么挑战?
  81. 项目中你认为做的最有价值的功能?
  82. 父类和子类有同一个属性,实例化子类时是否会包含父类的属性?
  83. 有没有出现过Full GC等问题?你是怎么排查的?
  84. 一般是怎么判断SQL 索引设置是否合理的?
  85. 什么是不可变对象?String 类为什么设计成不可变的?
  86. 抽象类和接口什么区别?你在做接口和类设计时如何选择?
  87. HashMap的key 类型有什么要求?
  88. 写一个深度优先算法?
  89. 写快速排序 & 冒泡排序?
  90. 什么是用户空间和内核空间?有什么区别?

需要获取得话麻烦一键三连+评论,然后添加VX(tkzl6666)即可免费领取

GitHub下载量百万的面试总结!竟是位P8三月份的面试汇总

 

GitHub下载量百万的面试总结!竟是位P8三月份的面试汇总

 

GitHub下载量百万的面试总结!竟是位P8三月份的面试汇总

 

希望大家金三银四找到自己满意的工作,不看机会的同学升职加薪,必拿3.75。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐