携程Java三面面经,已拿 offer!!
分享一位读者投稿的携程校招 Java 岗位的面经。
下面是正文。
个人背景:双非本,机械专业转码。
携程在正式面试之前,会有一个性格测试(40分钟)。性格测试之后,大概过一周进行笔试。笔试之后,会邮件通知是否通过并预约第一轮面试时间。
普通 offer 一般只有两面,如果是 sp 或者 ssp 的话,技术面貌似是三面。
携程的面试难度一般,效率比较高,面试体验还是不错的。
一面(45min)
主要是问八股,难度较低。
- 自我介绍;
- 进程和线程的区别;
- 并行和并发的区别;
synchronized的作用;synchronized和ReentrantLock的区别,如何选择;ThreadLocal使用过程中可能存在的问题(内存泄露);ThreadLocal内存泄露问题是怎么导致的;- 项目中是如何创建线程池的,什么不用
Executors去创建线程池; - 知道的本地缓存,选择 Caffeine 的原因;
- Redis 这类缓存和 Caffeine 的区别;
- Redis 中常见的数据结构,应用场景;
- 缓存穿透和缓存雪崩的区别,解决办法;
- MySQL 和 Redis 怎么保持数据一致;
- 一个 SQL 笔试题,join 多表查询(共享屏幕)。
答案:
- Java 并发常见面试题总结(上)、Java 并发常见面试题总结(中)、Java 并发常见面试题总结(下)
- Java高性能缓存库- Caffeine - 风之筝
- 缓存基础常见面试题总结(付费)
- Redis常见面试题总结(上)、Redis常见面试题总结(下)
- SQL常见面试题总结
二面(50min)
二面主要还是八股。
- 自我介绍;
- 使用多线程可能存在的问题;
- 线程池原理;
- 聊聊
ThreadLocal(概念+一些应用举例+常见的内存泄漏问题); - JVM 内存模型和垃圾回收;
- 用到过内存分析工具吗;
- 使用索引能带来什么好处,你项目中是怎么使用的;
- 索引底层常见的数据结构,MyISAM 引擎和 InnoDB 引擎用的是哪种;
- 聚簇索引和非聚簇索引;
- 最左前缀匹配原则;
- 造成索引失效的常见原因你知道那些,项目中遇到过索引失效问题吗;
- 如果有一条 SQL 语句执行的很慢,如何进行优化;
- 项目中是如何使用 ES的;
- ES 检索比较快的原因,为什么 MySQL 不行;
- 讲一下倒排索引;
- 手写一个生产者消费者队列;
- 反问。
答案:
- Java 并发常见面试题总结(上)
- Java 并发常见面试题总结(下)
- Java 内存区域详解、JVM 垃圾回收详解
- Java内存分析相关工具
- MySQL索引详解
- MySQL执行计划分析
- Elasticsearch常见面试题总结(付费)
HR面
- 个人的基本信息;
- 对携程的了解;
- 三个词形容自己;
- 手里还有哪些 offer;
- 平时的兴趣爱好;
- 选择工作的理由排序(薪资、加班情况之类的)。
英语测评
HR 面之后,还会有一个英语测评,题目比较多,对英语不好的同学不太友好。题型大概是阅读、演讲、听力这些。
不过,也不用担心,应该不太会因为英语测评的表现刷掉你,但英语测评还是可能会对你的面试评价造成影响,能做好还是要尽量做到最好。
携程Java三面面经,已拿 offer!!的更多相关文章
- 携程Java后台开发三面面经
前言 携程是我面试的第一个互联网公司,投递的岗位是后台开发实习生,总共面了三面,止步于人才库.中间兜兜转转,复杂的心理活动,不足与外人道也.唯有面试的技术部分与大家共享. 宣讲会完了之后有个手写代码的 ...
- Java程序员备战“金九银十”必备的面试技巧(附携程Java岗面试题)
一.面试前的准备 1.1 如何准备一场面试1.1.1 如何获取大厂面试机会1.1.2 面试必知 ①. 准备介绍自己 ②. 关于着装 ③ .随身带上自己的成绩单和简历 ④. 如果笔试就提前刷一些笔试题 ...
- 最新 携程java校招面经 (含整理过的面试题大全)
从6月到10月,经过4个月努力和坚持,自己有幸拿到了网易雷火.京东.去哪儿.携程等10家互联网公司的校招Offer,因为某些自身原因最终选择了携程.6.7月主要是做系统复习.项目复盘.LeetCode ...
- 最近很火的携程Java 工程师的一道面向对象面试题
最近这道面试题,传遍程序员各大小园地,本小白特摘抄整理与大家一起学习: 原题: package com.gxlee; public class Base { private String baseNa ...
- 携程Java工程师——一道面向对象面试选择题(转)
public class Base { private String baseName = "base"; public Base() { callName(); } public ...
- 美团实习Java岗面经,已拿offer
作者:icysnowgx 链接:https://www.nowcoder.com/discuss/71954?type=2&order=3&pos=10&page=1 来源:牛 ...
- 新鲜出炉!阿里Java后端面经,已拿offer!
前面给大家分享了一篇字节跳动拿下offer的面经,很多小伙伴都私信我说收获很大,感兴趣的朋友可以回头去看看.很多小伙伴还问我有没有其他大厂的面试题分享,这不他来啦,阿里2020春招面试题给大家整理在下 ...
- 携程二面:讲讲 MySQL 中的 WAL 策略和 CheckPoint 技术
前段时间我在准备暑期实习嘛,这是当时面携程的时候二面的一道问题,我一脸懵逼,赶紧道歉,不好意思不知道没了解过,面试官又解释说 redo log,我寻思着 redo log 我知道啊,WAL 是啥?给面 ...
- 携程实时大数据平台演进:1/3 Storm应用已迁到JStorm
携程大数据平台负责人张翼分享携程的实时大数据平台的迭代,按照时间线介绍采用的技术以及踩过的坑.携程最初基于稳定和成熟度选择了Storm+Kafka,解决了数据共享.资源控制.监控告警.依赖管理等问题之 ...
- 敏捷之旅--携程Scrum Master 新官上任三把火?
随着敏捷在国内的推行,越来越多的公司和组织开始使用敏捷领导团队. 敏捷团队如雨后春笋之势涌现. 敏捷教练的团队也越来越壮大. 原先只需要一个敏捷教练就能搞定,但是随着团队越来越多,我们难免会将 ...
随机推荐
- tidevice中常用api 浅谈
- 设备管理类API: - `pair(device: Device) -> bool`:配对一个iOS设备,返回是否成功. - `unpair(device: Device) -> bo ...
- 文件描述符&文件句柄
一.概念 1.1 文件描述符&文件描述符表 文件描述符(file descriptor, fd)是Linux系统中对已打开文件的一个抽象标记,所有I/O系统调用对已打开文件的操作都要用到它.这 ...
- Qt 如何配置CLion标准控制台输出?
CMake 相关问题: 即CMakeLists.txt文件中,在add_executable添加了WIN32.即当使用了WIN32标识后,就去掉了控制台,那么自然就没有信息打印出来了. # for e ...
- springboot启动类源码探索一波
举个例子: 这是一个原始的Spring IOC容器启动方法,我们需要AnnotationConfigApplicationContext这个类有如下几个步骤 1. 创建构造方法,根据我们所传入的Ap ...
- element-china-area-data
https://blog.csdn.net/xiejnpeng/article/details/111400199
- Java虚拟机——内存区域及内存溢出异常
一.Java内存区域 1.概述 对于java程序员来说,在虚拟机的自动内存管理机制的帮助下,不需要为每一个new操作去写delete/free代码,而且不容易出现内存泄漏和内存溢出问题.但是把内存控制 ...
- C++大整数类
用法 把头文件和源代码文件放在同一目录下,然后#include"INT"即可使用.你能对int类的变量进行a=2,a+=3,a%8,a--等等操作,那你就也能对INT进行.INT基 ...
- freeswitch xml_rpc模块
概述 freeswitch有非常多的周边模块,给我们提供各种各样的功能,有些功能在适当的场景下可以极大的方便我们的开发和应用. 今天我们介绍一个不常用的模块mod_xml_rpc. freeswitc ...
- vim处理冲突文件
一.文件冲突前: 二.文件冲突后(默认为): 此时编辑文档,将before改为after但是异常退出了,此时编辑文档提示冲突: 回车进入展示编辑前的文档: ll-a可查看到隐藏文件的信息: 三.文件冲 ...
- 机器学习-线性回归-损失函数+正则化regularization-06
目录 1. 为什么要加上正则项 2 L1稀疏 L2平滑 3. 代码1--L2正则 4 代码2--L2正则2 5. 代码3--l1正则 6. ElasticNet 1. 为什么要加上正则项 防止模型的过 ...