携程Java三面面经,已拿 offer!!

携程,java,三面,offer · 浏览次数 : 339

小编点评

**携程 Java 岗位的面试题** **自我介绍** * 双非本,机械专业转码。 * 携程在正式面试之前,会有一个性格测试(40分钟)。 * 面试后,大概过一周进行笔试。 * 笔试之后,会邮件通知是否通过并预约第一轮面试时间。 **第一轮面试** * 面试时间:约70分钟 * 面试官:技术专家 * 面试内容: * Java 基础知识(数据结构、算法、异常处理) * 并发编程(线程、锁) * MySQL 和 Redis 相关知识 * SQL 语言知识 **总结** * 面试难度一般,效率比较高,面试体验还是不错的。 * 面试官主要侧重于 Java 基础知识、并发编程、SQL 语言知识。 * 针对实际的面试问题,可以参考 Java 并发常见面试题总结(上)、Java 并发常见面试题总结(下)。

正文

分享一位读者投稿的携程校招 Java 岗位的面经。

下面是正文。

个人背景:双非本,机械专业转码。

携程在正式面试之前,会有一个性格测试(40分钟)。性格测试之后,大概过一周进行笔试。笔试之后,会邮件通知是否通过并预约第一轮面试时间。

普通 offer 一般只有两面,如果是 sp 或者 ssp 的话,技术面貌似是三面。

携程的面试难度一般,效率比较高,面试体验还是不错的。

一面(45min)

主要是问八股,难度较低。

  1. 自我介绍;
  2. 进程和线程的区别;
  3. 并行和并发的区别;
  4. synchronized 的作用;
  5. synchronizedReentrantLock 的区别,如何选择;
  6. ThreadLocal 使用过程中可能存在的问题(内存泄露);
  7. ThreadLocal 内存泄露问题是怎么导致的;
  8. 项目中是如何创建线程池的,什么不用Executors 去创建线程池;
  9. 知道的本地缓存,选择 Caffeine 的原因;
  10. Redis 这类缓存和 Caffeine 的区别;
  11. Redis 中常见的数据结构,应用场景;
  12. 缓存穿透和缓存雪崩的区别,解决办法;
  13. MySQL 和 Redis 怎么保持数据一致;
  14. 一个 SQL 笔试题,join 多表查询(共享屏幕)。

答案:

二面(50min)

二面主要还是八股。

  1. 自我介绍;
  2. 使用多线程可能存在的问题;
  3. 线程池原理;
  4. 聊聊ThreadLocal (概念+一些应用举例+常见的内存泄漏问题);
  5. JVM 内存模型和垃圾回收;
  6. 用到过内存分析工具吗;
  7. 使用索引能带来什么好处,你项目中是怎么使用的;
  8. 索引底层常见的数据结构,MyISAM 引擎和 InnoDB 引擎用的是哪种;
  9. 聚簇索引和非聚簇索引;
  10. 最左前缀匹配原则;
  11. 造成索引失效的常见原因你知道那些,项目中遇到过索引失效问题吗;
  12. 如果有一条 SQL 语句执行的很慢,如何进行优化;
  13. 项目中是如何使用 ES的;
  14. ES 检索比较快的原因,为什么 MySQL 不行;
  15. 讲一下倒排索引;
  16. 手写一个生产者消费者队列;
  17. 反问。

答案:

HR面

  • 个人的基本信息;
  • 对携程的了解;
  • 三个词形容自己;
  • 手里还有哪些 offer;
  • 平时的兴趣爱好;
  • 选择工作的理由排序(薪资、加班情况之类的)。

英语测评

HR 面之后,还会有一个英语测评,题目比较多,对英语不好的同学不太友好。题型大概是阅读、演讲、听力这些。

不过,也不用担心,应该不太会因为英语测评的表现刷掉你,但英语测评还是可能会对你的面试评价造成影响,能做好还是要尽量做到最好。

与携程Java三面面经,已拿 offer!!相似的内容:

携程Java三面面经,已拿 offer!!

分享一位读者投稿的携程校招 Java 岗位的面经。 下面是正文。 个人背景:双非本,机械专业转码。 携程在正式面试之前,会有一个性格测试(40分钟)。性格测试之后,大概过一周进行笔试。笔试之后,会邮件通知是否通过并预约第一轮面试时间。 普通 offer 一般只有两面,如果是 sp 或者 ssp 的话

[转帖]【jmeter】BeanShell用法详细汇总

一、什么是Bean Shell BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器jar文件大小为175k。BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法。 官网地址:http://w

[转帖]【jmeter】BeanShell用法详细汇总

一、什么是Bean Shell BeanShell是用Java写成的,一个小型的、免费的、可以下载的、嵌入式的Java源代码解释器,具有对象脚本语言特性,非常精简的解释器jar文件大小为175k。BeanShell执行标准Java语句和表达式,另外包括一些脚本命令和语法。 官网地址:http://w

[转帖]Java线程的5个使用技巧

https://cloud.tencent.com/developer/article/1179560?from=article.detail.1767994&areaSource=106000.6&traceId=akXSS578NgvCLH6Eiqbla Java线程有哪些不太为人所知的技巧与用

详解JAVA线程问题诊断工具Thread Dump

摘要:Thread Dump是非常有用的诊断Java应用问题的工具。 本文分享自华为云社区《调试排错 - Java 线程分析之线程Dump分析》,作者:龙哥手记。 Thread Dump是非常有用的诊断Java应用问题的工具。每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dum

【后端面经-java】java线程池满的处理策略

本文对java线程池做了具体介绍,并且讨论了java线程池满了之后的拒绝策略。

[Java]线程生命周期与线程通信

出于个人知识掌握程度与时间成本等多方面整体考虑,本篇文章对线程生命周期与线程通信的阐述并非非常详细,故可能并不适合所有博友,一些知识点在文中给出的【启发博文】中可能更容易找到答案。 如果文中阐述有不妥或不对的,多多交流。

万字长文详解Java线程池面试题

大家好,我是王有志。今天是《面霸的自我修养》第 6 篇文章,我们一起来看看面试中会问到哪些关于线程池的问题吧。

Java多线程-ThreadPool线程池-1(三)

开完一趟车完整的过程是启动、行驶和停车,但老司机都知道,真正费油的不是行驶,而是长时间的怠速、频繁地踩刹车等动作。因为在速度切换的过程中,发送机要多做一些工作,当然就要多费一些油。 而一个Java线程完整的生命周期就包括: 1、T1:创建(启动) 2、T2:运行(行驶) 3、T3:销毁(停车) 而T

10分钟带你徒手做个Java线程池

摘要:花10分钟开发一个极简版的Java线程池,让小伙伴们更好的理解线程池的核心原理。 本文分享自华为云社区《放大招了,冰河带你10分钟手撸Java线程池,yyds,赶快收藏吧》,作者:冰 河。 Java线程池核心原理 看过Java线程池源码的小伙伴都知道,在Java线程池中最核心的类就是Threa