最近面试遇到的高频面试题

大家好,我是 jonssonyan

互联网寒冬?金九银十真的不存在了么?虽说现在行情是差了一些,面试机会少了一些,但是大部分公司还是或多或少的招人,春招秋招都在进行。有人离职就有人入职。所以如果你还没约到面试,不要灰心,多投多面,自然而然面试的感觉也就有了。

这篇文章再和大家分享一些我最近面试遇到的面试题,我面试的是 Java 开发岗,1-5 年工作经验,希望对大家有帮助,也希望大家可以找到自己满意的工作。

  1. 一条 SQL 语句的执行过程
  • 连接器: 身份认证和权限相关(登录 MySQL 的时候)。
  • 查询缓存: 执行查询语句的时候,会先查询缓存(MySQL 8.0 版本后移除,因为这个功能不太实用)。
  • 分析器: 没有命中缓存的话,SQL 语句就会经过分析器,分析器说白了就是要先看你的 SQL 语句要干嘛,再检查你的 SQL 语句语法是否正确。
  • 优化器: 按照 MySQL 认为最优的方案去执行。执行器: 执行语句,然后从存储引擎返回数据
  1. 线程池的执行过程
  • 如果当前运行的线程数小于核心线程数,那么就会新建一个线程来执行任务。
  • 如果当前运行的线程数等于或大于核心线程数,但是小于最大线程数,那么就把该任务放入到任务队列里等待执行。
  • 如果向任务队列投放任务失败(任务队列已经满了),但是当前运行的线程数是小于最大线程数的,就新建一个线程来执行任务。
  • 如果当前运行的线程数已经等同于最大线程数了,新建线程将会使当前运行的线程超出最大线程数,那么当前任务会被拒绝,饱和策略会调用 RejectedExecutionHandler.rejectedExecution()方法。
  1. Spring 中 Bean 的生命周期
  1. Java 中锁升级的过程

https://segmentfault.com/a/1190000022904663

  1. synchronized 关键字的使用方式
  • synchronized 关键字加到 static 静态方法和 synchronized(class) 代码块上都是是给 Class 类上锁
  • synchronized 关键字加到实例方法上是给对象实例上锁
  • 尽量不要使用 synchronized(String a) 因为 JVM 中,字符串常量池具有缓存功能
  1. Java 内存模型

https://javaguide.cn/java/concurrent/jmm.html

  1. Redis 中缓存击穿、雪崩、穿透,以及对应的解决方案

https://pdai.tech/md/db/nosql-redis/db-redis-x-cache.html

  1. 限流算法有哪些

https://javaguide.cn/high-availability/limit-request.html

  1. Spring AOP 应用场景

https://juejin.cn/post/7174708698504233017

  1. 分布式锁

https://pdai.tech/md/arch/arch-z-lock.html

  1. 分布式中的 CAP 理论

CAP 也就是 Consistency(一致性)、Availability(可用性)、Partition Tolerance(分区容错性) 这三个单词首字母组合。、

https://baike.baidu.com/item/CAP原则/5712863

以上就是我最近面试总结的一些常见面试题,被问到的频率还是很高的,希望对大家有帮助,我是 jonssonyan,我们下期再见。

相关推荐
ShineWinsu14 小时前
对于Linux:自定义协议(基于TCP)实现网络计算器的解析
linux·网络·c++·网络协议·tcp/ip·面试·网络计算器
HeiSenBerg14 小时前
Kotlin Flow 从冷到热:一篇撑起面试的流式编程指南
面试
今日无bug15 小时前
深入理解 JavaScript 变量提升(Hoisting)
javascript·面试
HeiSenBerg15 小时前
Android LiveData 原理完整剖析:从订阅、分发到粘性事件
面试
为你学会写情书15 小时前
为什么弹窗状态不该放在全局Store?React性能优化面经复盘与实战指南
面试
众人皆醒我独醉15 小时前
什么是输入上下文、MCP、Agent、Skills?—— 四个让你用不好 AI 的概念,一次讲清楚
面试·ai编程
liang_jy1 天前
文件管理(一)—— 初识文件管理
面试·操作系统
liang_jy1 天前
文件管理(二)—— 文件结构
面试·操作系统
HeiSenBerg1 天前
Android Lifecycle 原理完整剖析:从监听、事件分发到状态驱动
面试
CoderYanger1 天前
A.每日一题:1979. 找出数组的最大公约数
java·程序人生·算法·leetcode·面试·职场和发展·学习方法