面试题
靠谱的内推君
这个作者很懒,什么都没留下…
展开
-
常见JVM面试题及答案整理
前言 总结了JVM一些经典面试题,分享出我自己的解题思路,希望对大家有帮助,有哪里你觉得不正确的话,欢迎指出,后续有空会更新。 1.什么情况下会发生栈内存溢出。 思路: 描述栈定义,再描述为什么会溢出,再说明一下相关配置参数,OK的话可以给面试官手写是一个栈溢出的demo。 我的答案: 栈是线程私有的,他的生命周期与线程相同,每个方法在执行的时候都会创建一个栈帧,用来存储局部变量表,操作数栈,动态链接,方...转载 2021-02-26 11:00:39 · 233 阅读 · 0 评论 -
【精选面试题】数据库系列
一、mysql 聚集索引、非聚集索引聚集索引:给表上了主键,那么表在内存上的由整齐排列的结构转变成了树状结构,也就是「平衡树」结构,换句话说,就是整个表就变成了一个索引。没错, 再说一遍, 整个表变成了一个索引,也就是所谓的「聚集索引」。这就是为什么一个表只能有一个主键, 一个表只能有一个「聚集索引」,因为主键的作用就是把「表」的数据格式转换成「索引(平衡树)」的格式放置。非聚集索引:非聚集索引和聚集索引一样, 同样是采用平衡树作为索引的数据结构。索引树结构中各节点的值来自于表中的索引字段,原创 2020-05-28 16:59:37 · 331 阅读 · 0 评论 -
【精选面试题】多线程系列
一、父子线程怎么共享数据JDK的InheritableThreadLocal类可以完成父线程到子线程的值传递。但对于使用线程池等会池化复用线程的组件的情况,线程由线程池创建好,并且线程是池化起来反复使用的;这时父子线程关系的ThreadLocal值传递已经没有意义,应用需要的实际上是把任务提交给线程池时的ThreadLocal值传递到任务执行时。核心类TransmittableThreadLocal:public class TransmittableThreadLocal<T>原创 2020-05-26 16:52:13 · 338 阅读 · 0 评论 -
面试官:怎么排查堆内存溢出呀?
今天就带着大家看看堆内存溢出我们一般怎么排查的。在排查之前,我想jvm的基础知识大家应该都是了解了的吧?我就带大家回温一下JVM的内存模型(这玩意跟JAVA内存模型JVM可不一样,不要记错了)今天我就直说堆,因为溢出是发送在堆中的。JVM堆内存被分为两部分:年轻代(Young Generation)和老年代(Old Generation)。年轻代年轻代是所有新对象产生的地方。当年轻代内存空间被用完时,就会触发垃圾回收。这个垃圾回收叫做Minor GC。年轻代被分为3个部分——Enden区和两转载 2020-05-23 17:13:44 · 1945 阅读 · 0 评论 -
另辟蹊径,MySQL主从同步延迟,这样解决也挺好
一、canal是个啥?canal是阿里开发的一款基于数据库增量日志解析,提供增量数据订阅与消费的框架,整个框架纯JAVA开发,目前仅支持Mysql和MariaDB(和mysql类似)。那什么是数据库增量日志?MySQL的日志种类是比较多的,主要包含:错误日志、查询日志、慢查询日志、事务日志、二进制日志。而MySQL数据库所发生的数据变更(DML(data manipulation language)数据操纵语言,也就是我们熟悉的增删改),都会以二进制日志(binary log)形式存储。二、转载 2020-05-23 16:29:37 · 1691 阅读 · 0 评论 -
不会看 Explain执行计划,劝你简历别写熟悉 SQL优化
一个技术大牛说到他面试了一个工作6年的程序员,表情挺复杂,他说:我看他简历写着熟悉SQL语句调优,就问了下Explain执行计划怎么看?结果这老哥一问三不知,工作6年这么基础的东西都不了解!感受到了大佬的王之鄙视,回到工位我就开始默默写这个,哎~ 我TM也不太懂Explain,老哥你这是针对我啊!哭唧唧~Explain有什么用当Explain与SQL语句一起使用时,MySQL会显示来自优化器关于SQL执行的信息。也就是说,MySQL解释了它将如何处理该语句,包括如何连接表以及...转载 2020-05-23 15:46:29 · 250 阅读 · 0 评论 -
深入理解HashMap(精华必看)
Hashmap是一种非常常用的、应用广泛的数据类型,最近研究到相关的内容,就正好复习一下。网上关于hashmap的文章很多,但到底是自己学习的总结,就发出来跟大家一起分享,一起讨论。1、hashmap的数据结构要知道hashmap是什么,首先要搞清楚它的数据结构,在java编程语言中,最基本的结构就是两种,一个是数组,另外一个是模拟指针(引用),所有的数据结构都可以用这两个基本结构来构造的,hashmap也不例外。Hashmap实际上是一个数组和链表的结合体(在数据结构中,一般称之为“链表散列“),请看转载 2020-05-20 16:28:22 · 270 阅读 · 0 评论 -
数据结构解析-HashMap
概要HashMap在JDK1.8之前的实现方式 数组+链表,但是在JDK1.8后对HashMap进行了底层优化,改为了由 数组+链表+红黑树实现,主要的目的是提高查找效率。如图所示:JDK版本 实现方式 节点数>=8 节点数<=6 1.8以前 数组+单向链表 数组+单向链表 数组+单向链表 1.8以后 数组+单向链表+红黑树 数组+红黑树 数组+单向链表 HashMap1.继承关系public class转载 2020-05-20 16:21:51 · 160 阅读 · 0 评论 -
面试问答汇总
面试问答汇总目 录一、你最大的优点是什么?(回答技巧及范例)二、 “你有什么问题要问我的吗?” 向面试官提问三、自我介绍四、你为什么会选择你目前学习的专业呢?五、你有过和别人合作的经历吗?六、说说您的缺点,好吗?七、在人际沟通上是否曾经有过不和谐?八、能说一说你未来的职业生涯规划吗?九、在被问到家庭情况的时候,应该怎么回答?十、多个问题同时出现时,应该如何解决十一、关于面试礼仪十二、小组面试十三、回答“你的最大缺点是什么”技巧及范例十四、面试.转载 2020-05-15 10:10:43 · 1962 阅读 · 0 评论 -
电话面试的技巧和注意事项
电话面试的技巧和注意事项电话面试的技巧和注意事项电话面试短则 5 分钟,长的会有 20-30 分钟,取决于 HR 对应聘者的判断。作为应聘者,突然接到电话面试应如何应对呢?应聘者接受电话面试要掌握以下十个技巧。1、主动选择通话时间接到电话的地点可能在任何地方,街道、商场、公共汽车站等等,这些地方声音嘈杂,不利于沟通,这时,你可以主动要求另约时间再联系,如说:“对不起,我正有事,目前的环境比较吵,是否可以半个小时之后给您回电话?”,HR 一般都会答应这样的要求。这时,你要.转载 2020-05-15 09:54:35 · 599 阅读 · 0 评论 -
2020 面试题精选
1.简述synchronized 和java.util.concurrent.locks.Lock&ReentrantLock的区别答:Lock是Java 5以后引入的新的API,和关键字synchronized相比 主要相同点:Lock 能完成synchronized所实现的所有功能; 主要不同点:Lock有比synchronized更精确的线程语义和更好的性能,而且...原创 2020-05-14 08:19:46 · 1025 阅读 · 0 评论