text: (window.webpackJsonp=window.webpackJsonp||[]).push([[74],{493:function(v,_,t){"use strict";t.r(_);var a=t(15),i=Object(a.a)({},(function(){var v=this,_=v.$createElement,t=v._self._c||_;return t("ContentSlotsDistributor",{attrs:{"slot-key":v.$parent.slotKey}},[t("h1",{attrs:{id:"滴滴面试1面-2面-java后端"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#滴滴面试1面-2面-java后端"}},[v._v("#")]),v._v(" 滴滴面试1面+2面  Java后端")]),v._v(" "),t("p",[v._v("双非渣本小菜鸡，有幸进入滴滴，时间挺久啦，收到offer，总结一下面经，可能忘记一些")]),v._v(" "),t("p",[v._v("滴滴进入，金融事业部滴滴支付方向")]),v._v(" "),t("h2",{attrs:{id:"一面-6月22日11-00-一个小时"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#一面-6月22日11-00-一个小时"}},[v._v("#")]),v._v(" 一面 -- 6月22日11:00  一个小时")]),v._v(" "),t("p",[v._v("(全程赛码在线面试系统)")]),v._v(" "),t("p",[v._v("一面面试官是一个大哥哥感觉的，一直在笑~~ 我太喜欢了，给我的感觉很放松很nice")]),v._v(" "),t("ol",[t("li",[v._v("上来自我介绍 (说我特别有激情，hhh)")]),v._v(" "),t("li",[v._v("介绍一下你的项目 (这部分就是正常介绍，说出了为什么做、项目特点、成就、职责、项目技术难点、遇到问题、可优化点、对项目未来想法)")])]),v._v(" "),t("p",[t("strong",[v._v("【问了点项目技术，从Java基础开始了】")])]),v._v(" "),t("ol",{attrs:{start:"3"}},[t("li",[v._v("8个基本数据类型以及对应的字节数      (这个可以自行百度下)")]),v._v(" "),t("li",[v._v("什么是面向对象     (这个我用我自己做饭和去餐馆点餐举例子的，hhh)")]),v._v(" "),t("li",[v._v("面向对象和面向过程的区别    (这里主要说，对应的优缺点，面向对象易扩展、封装、继承、多态balabala )")]),v._v(" "),t("li",[v._v("那对于多态，说说你的看法     (多态的定义+自己理解，以及运行时多态和编译时多态 ，就是重载重写)")]),v._v(" "),t("li",[v._v("那重载和重写有什么区别    ( 老八股 )")]),v._v(" "),t("li",[v._v("构造方法可以被重写吗      ( 不能重写可以重载 说原因 )")]),v._v(" "),t("li",[v._v("集合用过吧，说说你的了解      ( List、Map、Set以及用过的底下的一个劲的说吧 )")]),v._v(" "),t("li",[v._v("那ArrayList和LinkedList       ( 底层构成嘛，一个数组一个链表 )")]),v._v(" "),t("li",[v._v("一般用HashSet干嘛        ( 去重，项目中怎么用过   )")]),v._v(" "),t("li",[v._v("HashMap底层结构，1.7-1.8区别 ，为什么这样优化     ( 背吧 )")]),v._v(" "),t("li",[v._v("HashMap 安全吗     ( 不安全，继续背 )")]),v._v(" "),t("li",[v._v("用过什么安全的Map集合     ( HashTable、ConcurrentHashMap 他们的底层组成和HashMap的区别 )")]),v._v(" "),t("li",[v._v("ConcurrenHashMap 底层 1.7-1.8 怎么变化的，怎么保证同步的  (  背！ )")]),v._v(" "),t("li",[v._v("ConcurrenHashMap 锁怎么优化的、锁在哪里了  (1.7 Segment分段锁、1.8synchronized锁Node结点以及原因、优点)")]),v._v(" "),t("li",[v._v("为什么选择synchronized，不能用别的吗    ( 这里说的synchronized好处、和Lock区别 )")]),v._v(" "),t("li",[v._v("HashMap和ArrayList怎么扩容的    (一个16  一个10 影响因子0.75以及为啥是这个 )")]),v._v(" "),t("li",[v._v("HashMap 扩容的时候，流程  ( 底层经过什么变化、都说 )")]),v._v(" "),t("li",[v._v("那我List集合想变为安全的怎么弄，使用过安全的吗     ( 这里我说的Collections.synchronizedList()方法、Vector、CopyOnWriteArrayList )")])]),v._v(" "),t("p",[t("strong",[v._v("【然后多线程了】")])]),v._v(" "),t("ol",{attrs:{start:"20"}},[t("li",[v._v("你对多线程的理解，你使用过吗 ？ ( 说的多线程定义、怎么使用、为什么使用、创建方式对应区别 )")]),v._v(" "),t("li",[v._v("wait() 和 sleep() 的区别    ( 这里就说的区别，以及wait被唤醒 )")]),v._v(" "),t("li",[v._v("那你对线程池了解吗？  ( 说的线程池的定义、执行流程 )")]),v._v(" "),t("li",[v._v("你使用过线程池吗   ( 这个项目中没用过、小Dome使用过 )")]),v._v(" "),t("li",[v._v("你了解过哪些线程池 ( 说了常见四个、newCached、newFixed、newSingle、newScheduled )")]),v._v(" "),t("li",[v._v("线程池的核心参数都有什么？ ( corePoolSize、unit、maximumPoolSize、workQueue、handler  就记住这5个 )")]),v._v(" "),t("li",[v._v("饱和策略或者说拒绝策略都有哪些？  ( AbortPolicy、DiscardPolicy、 DiscardOldestPolicy、CallerRunsPolicy 背吧)")])]),v._v(" "),t("p",[t("strong",[v._v("【JVM相关了】")])]),v._v(" "),t("ol",{attrs:{start:"27"}},[t("li",[v._v("都有什么GC算法  ( 标记-清除、标记-整理、复制、分代收集(1.7-1.8)  怎么回收垃圾的，全说 )")]),v._v(" "),t("li",[v._v("年轻代都经历了什么  ( 8：1：1，怎么回收得之类的 )")]),v._v(" "),t("li",[v._v("JVM调优参数 ( 我说了Xmx、Xms、Xmn、Xss )")])]),v._v(" "),t("p",[t("strong",[v._v("【Mysql】")])]),v._v(" "),t("ol",{attrs:{start:"30"}},[t("li",[v._v("Mysql了解哪些锁  ( 乐观锁、悲观锁 )")]),v._v(" "),t("li",[v._v("项目中怎么使用的  ( 就说项目中哪儿使用得乐观、哪儿悲观、怎么用的 )")]),v._v(" "),t("li",[v._v("Mysql中使用过索引吗  ( 使用过，使用哪些 )")]),v._v(" "),t("li",[v._v("底层都知道哪些  ( 说了哈希、B+，还说了B+和B的区别 )")]),v._v(" "),t("li",[v._v("最左匹配原则   ( 直接举的a b c 的例子 )")]),v._v(" "),t("li",[v._v("a b c 索引，ac  bc 能索引吗  ( ac可以  bc不行 )")]),v._v(" "),t("li",[v._v("哪些情况下索引不击中  ( 这里刚开始记不太清楚，面试官引导了一下，类似于 %abc 、or()、函数之类的都不行 )")])]),v._v(" "),t("p",[t("strong",[v._v("【该并发方面了】")])]),v._v(" "),t("ol",{attrs:{start:"37"}},[t("li",[v._v("volatile 关键字都有什么作用  ( 我说了可见性，怎么可见的 )")]),v._v(" "),t("li",[v._v("还有什么作用吗  ( 这个不知道还有什么了 )")]),v._v(" "),t("li",[v._v("对JUC了解吧，都包含什么  ( volatile关键字、CAS算法、concurrent包例如ConcurrentHashMap、多线程、线程池、Lock )")]),v._v(" "),t("li",[v._v("使用过什么Lock锁  ( 可重入锁ReentrantLock、ReadWriteLock 读写锁 )")]),v._v(" "),t("li",[v._v("Lock底层是什么  ( AQS、这个我确实不知道了。。。 )")])]),v._v(" "),t("p",[t("strong",[v._v("【手撕】")])]),v._v(" "),t("ol",{attrs:{start:"42"}},[t("li",[v._v("手撕出的题不算难， 翻转链表+链表合并 合并成一个题，但是全程赛码、、、自己构建了链表 （两种方式），还得正常运行出来  要我命")])]),v._v(" "),t("p",[t("strong",[v._v("【之后就是反问了】")])]),v._v(" "),t("ol",{attrs:{start:"43"}},[t("li",[v._v("部门业务+技术栈+实习生能接触的")]),v._v(" "),t("li",[v._v("对我的感觉，对我的建议  ( 很有激情、希望可以保持下去一些习惯xxxxxxxxxxx，挺多的，感觉大哥哥~~ )")]),v._v(" "),t("li",[v._v("感谢大哥哥")])]),v._v(" "),t("p",[v._v("一面能记住的只有这些了，真的很感谢那个大哥哥，一直在笑，我们就聊的很开心  哈哈哈，全程给我鼓励")]),v._v(" "),t("p",[v._v("然后当天下午14:00  约二面了")]),v._v(" "),t("h2",{attrs:{id:"二面-6月23日11-00-一个小时30分钟"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#二面-6月23日11-00-一个小时30分钟"}},[v._v("#")]),v._v(" 二面 -- 6月23日11:00  一个小时30分钟")]),v._v(" "),t("p",[v._v("二面是一个严肃、偶尔爱笑笑的大叔，当时很忙，得抽出空来面我，后期大叔抱着电脑找了一个新地方面试的")]),v._v(" "),t("p",[v._v("感觉是个很严谨，很厉害的大佬：")]),v._v(" "),t("p",[v._v("上来就迟到了3分钟，不好意思哈，我们开始今天的面试。")]),v._v(" "),t("ol",[t("li",[v._v("先自我介绍一下吧   ( 自我介绍了一波 )")])]),v._v(" "),t("p",[v._v("然后大叔说，作为大学生，你们的项目和小实习没什么参考价值，我们直接算法吧  （好  欲哭无泪）")]),v._v(" "),t("p",[v._v("【手撕】")]),v._v(" "),t("p",[v._v("还是全程赛码，。。。")]),v._v(" "),t("ol",{attrs:{start:"2"}},[t("li",[v._v("一个正序数组，一个逆序数组，合并输出一个升序数组，你说说思路   ( 我是想先合并数组，然后排序 )")]),v._v(" "),t("li",[v._v("思路可以，这个简单一点，我们10分钟左右吧  ( OK，我开始写，然后我直接用的Arrays.sort()方法，hhh  然后大叔说不能用这个，然后我手写了一个快排 )")]),v._v(" "),t("li",[v._v("讲讲你的代码   ( 说说每一步干嘛的 )")]),v._v(" "),t("li",[v._v("快排还能优化吗   ( 我说了说我印象中快排可以怎么优化，几个优化方案 大叔挺满意的 )")]),v._v(" "),t("li",[v._v("第二个题，"),t("a",{attrs:{href:"https://www.nowcoder.com/practice/9b4c81a02cd34f76be2659fa0d54342a?tpId=13&&tqId=11172&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking",target:"_blank",rel:"noopener noreferrer"}},[v._v("顺时针打印矩阵"),t("OutboundLink")],1),v._v("，这个思路复杂一点 ，我们15分钟左右吧   ( 然后我开始想着写着，赛码有些还得自己引入，很难顶  最后写出来了 )")]),v._v(" "),t("li",[v._v("讲讲你的代码   ( 说说每一步干嘛的 )")])]),v._v(" "),t("p",[v._v("到这里手撕+讲解问问题，已经44分钟了，算法部分过去了，")]),v._v(" "),t("ol",{attrs:{start:"8"}},[t("li",[v._v("我看你一面浅问了JVM，那JVM你了解多少？ ( JVM都包含什么 （1.7-1.8），垃圾回收，每一步做什么，JVM调优全说了 )")]),v._v(" "),t("li",[v._v("年轻代和年老代 回收频率都是什么   ( 背的 )")])]),v._v(" "),t("p",[v._v("【可怕的来了，计网+操作系统】")]),v._v(" "),t("ol",{attrs:{start:"10"}},[t("li",[v._v("问问你计网吧，HTTPS和HTTP区别  、原理")]),v._v(" "),t("li",[v._v("HTTPS 流程  ( 这里没有答的让大叔get到 )")]),v._v(" "),t("li",[v._v("GET 和 POST 的区别")]),v._v(" "),t("li",[v._v("状态码 ，404、500、502、504     （这里  502、504 大叔说我回答不太准确）")]),v._v(" "),t("li",[v._v("你遇到过 502 、504吗   ( 我当然没。。 )")]),v._v(" "),t("li",[v._v("你知道多路复用吗  ( 说了说概念 )")])]),v._v(" "),t("p",[v._v("一直没问你操作系统，我问问，")]),v._v(" "),t("ol",{attrs:{start:"14"}},[t("li",[v._v("堆和栈的区别、是进程中的堆和栈  （ 我记不太住，大概说了说 ）")]),v._v(" "),t("li",[v._v("那常量生成在哪儿 、变量呢   ( 这里我不知道，说的估计不对 )")])]),v._v(" "),t("p",[v._v("这时候已经12:20多了")]),v._v(" "),t("p",[v._v("反问，")]),v._v(" "),t("ol",{attrs:{start:"16"}},[t("li",[v._v("对我的总体感觉  ( 思维算法挺好的 计网+操作系统不太稳，哭了哭了 )")]),v._v(" "),t("li",[v._v("对我的建议  ( xxxxxx )")])]),v._v(" "),t("p",[v._v("到这里基本就结束了，面的筋疲力尽，最后也是感谢了大叔，气场很强，很nice")]),v._v(" "),t("h2",{attrs:{id:"hr通知-6月23日-14-00"}},[t("a",{staticClass:"header-anchor",attrs:{href:"#hr通知-6月23日-14-00"}},[v._v("#")]),v._v(" HR通知 -- 6月23日  14:00")]),v._v(" "),t("p",[v._v("本来觉得可能很不稳呢，计网+操作系统回答的不是很理想")]),v._v(" "),t("p",[v._v("但是当天下午2点多 ， hr电话到了  ，通过面试了   oc了！！！于是 等待offer   hhhh")]),v._v(" "),t("p",[v._v("6月30日  收到offer~~     ✌✌！！！")]),v._v(" "),t("p",[v._v("正好春招的小尾巴，进大厂，希望可以顺利转正吧  听说滴滴转正挺难的  加油加油")]),v._v(" "),t("blockquote",[t("p",[v._v("春招从3-近7月，纯面试时间2个月")]),v._v(" "),t("p",[t("strong",[v._v("获得offer、oc：")])]),v._v(" "),t("p",[v._v("滴滴出行、好未来、微店、恒生电子、群硕、中交兴路、泛微网络、浩鲸、中科星图、亚信、同湛科技")]),v._v(" "),t("p",[v._v("中小偏多，春招顺利结束啦  继续加油！！")])])])}),[],!1,null,null,null);_.default=i.exports}}]);