每天一套面试题Day12-京东高频(1)

链接题目来自牛客

我的每日一套面试题专栏,每天更新一起打卡

1.synchronized和Lock有什么区别?

我的博客介绍synchronized 我的博客介绍Lock

链接小林 alt

2.说说你对AQS的理解。

定位:它是一个构建锁和同步器的框架,是JUC的基石。 核心:一个volatile的int状态位(state) 和一个FIFO线程等待队列。 模式:使用了模板方法模式,子类通过重写 tryAcquire, tryRelease 等方法来定义具体的同步规则。 价值:它封装了复杂的线程排队、阻塞与唤醒机制,让构建高性能、线程安全的同步器变得简单。

3.如何创建线程池?线程池常见参数有哪些?

  • 1,Executor工具类
  • 2,new ThreadPoolExecutor() 常见参数 核心线程数,最大线程数,非核心线程数最大存活时间,线程工厂,拒绝策略,任务队列

4.请你说说HashMap底层原理和扩容机制。

数组+链表 数组+链表/红黑树(JDK8以及之后,在链表长度>=8且数组长度≥64时时会变成红黑树。默认初始容量16,负载因子0.75当元素数目大于负载因子(0.75)×容量的时候,会发生扩容,扩容为原来的两倍,在jdk7之前要重新计算来确定位置,由于要么位置在原位置,要么在原位置+原数组长度,所以用哈希值与上原数组长度,如果为真,那么就在原位置+原数组长度,不然的话就不动。确定好在哈希桶的位置后,再尾插进对应的位置。

5.说说你了解的JVM内存模型

方法区,堆

虚拟机栈,本地方法栈,程序计数器,

6.说说JVM的垃圾回收算法。

标记-复制算法(新生代,无碎片),标记-清除算法(老年代,有碎片)->标记-整理算法(老年代,无碎片)

7.说说你对AOP的理解。

AOP面向切面编程,切面包括:where(切入点),when(通知), 定义了在切入点“何时”执行“什么”。抽取出了共性的方法 Spring AOP是:动态代理(实现了接口) CGLIB生成目标类的子类(没有实现接口)

#面试真题#
每日一套面试真题 文章被收录于专栏

记录刷过的面试真题

全部评论
[赞很棒 谢谢
1 回复 分享
发布于 今天 15:45 上海

相关推荐

今天 12:02
门头沟学院 Java
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
正在热议
更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务