我分享文章的时候,有个读者回复说他去年就关注了我的微信公众号,打算看完我的所有文章,然后去面试,结果我后来很长时间不更新了。。。所以为了弥补一直等我的娃儿们,给大家的金三银四准备了100道花时间准备的高频Java面试题,大家不要太感动,记得点赞评论就行。

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

这些题我认为认真思考还是很有价值的,答案整理中,全部整理好,我会做出PDF,整理好后大家公众号后台回复“Java面试题”领取。

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. 动态代理了解吗? cglib什么区别
  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. 分库分表做了吗? 怎么实现的?
  40. MySQL 主从同步怎么做的?binlog清楚吗?
  41. 有没有做分库分表?怎么设计的?
  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. 缓存穿透、雪崩有了解吗
  72. 设计一个抢红包的程序?
  73. Dp背包问题?
  74. Minor GC 与 Full GC 分别在什么时候发生?
  75. Java 类加载过程?
  76. 谈谈对Spring IOC和DI的理解?
  77. 你常用的git 命令?
  78. 线程调用start 和 run 什么区别? 会有什么效果
  79. 中序遍历二叉树
  80. 之前项目遇到过什么挑战?
  81. 项目中你认为做的最有价值的功能?
  82. 父类和子类有同一个属性,实例化子类时是否会包含父类的属性?
  83. 有没有出现过Full Gc等问题? 你是怎么排查的?
  84. 一般是怎么判断SQL 索引设置是否合理的?
  85. 什么是不可变对象?String 类为什么设计成不可变的?
  86. 抽象类和接口什么区别?你在做接口和类设计时如何选择?
  87. HashMap的key 类型有什么要求?
  88. 写一个深度优先算法?
  89. 写快速排序 & 冒泡排序?
  90. 什么是用户空间和内核空间?有什么区别?

大家先思考思考,答案更新完毕在公众号后台回复”Java面试题“ 暗号领取。

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

100道Java高频面试题(阿里面试官整理)的更多相关文章

  1. 100道Java基础面试题收集整理(附答案)

    不积跬步无以至千里,这里会不断收集和更新Java基础相关的面试题,目前已收集100题. 1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Cl ...

  2. 熟悉这几道 Redis 高频面试题,面试不用愁

    1.说说 Redis 都有哪些应用场景? 缓存:这应该是 Redis 最主要的功能了,也是大型网站必备机制,合理地使用缓存不仅可以加 快数据的访问速度,而且能够有效地降低后端数据源的压力. 共享Ses ...

  3. 金九银十已到!掌握这300道java高频面试题,助你面试BAT无忧!

    前言 不知不觉已经到了九月了,回首看年初的时候简直像做梦一样.不得不说时间真的是无情一般的流逝,题外话就不多说了!回归正题,现在已经到了今年最后一波大好的跳槽涨薪的时机了,错过了这一次可能你就得等到明 ...

  4. 100道Java基础面试题

    1.什么是B/S架构?什么是C/S架构 B/S(Browser/Server),浏览器/服务器程序 C/S(Client/Server),客户端/服务端,桌面应用程序 2.你所知道网络协议有那些? H ...

  5. 31道Java核心面试题,一次性打包送给你

    先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系列文章. ...

  6. 万字长文,62道Java核心面试题,一次性打包送给积极向上的你

    先看再点赞,给自己一点思考的时间,微信搜索[沉默王二]关注这个靠才华苟且的程序员.本文 GitHub github.com/itwanger 已收录,里面还有一线大厂整理的面试题,以及我的系列文章. ...

  7. 50道java线程面试题

    50道Java线程面试题 下面是Java线程相关的热门面试题,你可以用它来好好准备面试. 1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序 ...

  8. 53道Java线程面试题

    53道Java线程面试题 下面是Java线程相关的热门面试题,你可以用它来好好准备面试. 1) 什么是线程? 线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位.程序 ...

  9. 115道Java经典面试题(面中率最高、最全)

    115道Java经典面试题(面中率最高.最全) Java是一个支持并发.基于类和面向对象的计算机编程语言.下面列出了面向对象软件开发的优点: 代码开发模块化,更易维护和修改. 代码复用. 增强代码的可 ...

随机推荐

  1. mybatis Sql语句配置详解

    sql语句配置 id sqlSession执行的唯一标识 resultMap 结果集封装映射,可用于内部对象一对多封装 resultType 返回的结果类型,直接就是一个po对象 resultSets ...

  2. 折半搜索(meet in the middle)

    折半搜索(meet in the middle) ​ 我们经常会遇见一些暴力枚举的题目,但是由于时间复杂度太过庞大不得不放弃. ​ 由于子树分支是指数性增长,所以我们考虑将其折半优化; 前言 ​ 这个 ...

  3. sort排序使用以及lower_bound( )和upper_bound( )

    sort()原型: sort(first_pointer,first_pointer+n,cmp) 排序区间是[first_pointer,first_pointer+n)      左闭右开 参数1 ...

  4. 【史上最全】Hadoop 核心 - HDFS 分布式文件系统详解(上万字建议收藏)

    1. HDFS概述 Hadoop 分布式系统框架中,首要的基础功能就是文件系统,在 Hadoop 中使用 FileSystem 这个抽象类来表示我们的文件系统,这个抽象类下面有很多子实现类,究竟使用哪 ...

  5. MySQL 误删用户故障解决方案

    目录 "误删"所有用户 解决方式一: 停止数据库 跳过 授权表 和 网络启动(重要) 插入新的用户 重启启动数据库 解决方式二: 停止数据库 跳过 授权表 和 网络启动(重要) 授 ...

  6. VS2010的单元测试(二)

    四.附加测试属性 附加测试属性,在默认生成的测试代码是使被注释掉的,取消注释就可以使用. 例如,要在执行测试前,输出测试开始时间,在执行测试后,输出测试结束时间.代码如下: [ClassInitial ...

  7. ArcMobile的CoordinateCollection在逆时针添加点时自动调整节点顺序的问题

    为了使用ArcMobile实现量测功能,LZ自定义了一个MapGraphicLayer用于绘图,代码如下: using System.Drawing; using ESRI.ArcGIS.Mobile ...

  8. Jenkins 安装与部署详细教程

    一.概述 Jenkins 的前身是 Hudson 是一个可扩展的持续集成引擎.Jenkins 是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.Jenkins 支持各 ...

  9. 2019牛客多校第四场B xor(线性基求交)题解

    题意: 传送门 给\(n\)个集合,每个集合有一些数.给出\(m\)个询问,再给出\(l\)和\(r\)和一个数\(v\),问你任意的\(i \in[l,r]\)的集合,能不能找出子集异或为\(v\) ...

  10. Mybatis-02 CRUD

    Mybatis-02 CRUD CRUD 先来简单回顾一下之前的准备步骤: 创建一个数据库,并加入数据 创建一个Maven项目 导入对应的依赖 创建Pojo类和Dao类 写出Mybatis工具类 配置 ...