关于java:三面痛失携程offerJava开发岗来看看我都遇到了什么题目吧

1次阅读

共计 1055 个字符,预计需要花费 3 分钟才能阅读完成。

前言

携程是我面试的第一个互联网公司,投递的岗位是后盾开发实习生,总共面了三面,止步于人才库。两头兜兜转转,简单的心理流动,有余与外人道也。唯有面试的技术局部与大家共享。

宣讲会完了之后有个手写代码的口试,大抵内容:

  • 已知有一颗二叉排序树,向树外面插入节点,如果该节点已存在(节点值相等),将节点中的 count 字段加一;如果不存在,将节点插入树中,并将节点的 count 值置为 1。自行设计数据结构,插入算法并且剖析算法的复杂度。

题目比较简单,写完交卷。早晨一点左右接到一面面试告诉.

一面

  • 例行自我介绍、我的项目介绍。而后开始面试:
  • 我的项目是用 http 还是 https 拜访的。答:https。
  • http 1.0 和 http 2.0 的区别?
  • 说下 https 的申请过程。
  • 说说 ssl 四次握手的过程。
  • 在 java 7 和 java 8 中 GC 的区别。
  • 看你的我的项目下面有做大文件的分片上传,在上传的过程能够做其余的事件吗?是否能够后盾运行?
  • 多个 task 是在一个过程中运行吗?
  • 数据库建索引有哪些思考?
  • 之前保留文件分片序号的时候会呈现脏读的状况,如何避免脏读?事务隔离是怎么做的?
  • 304 状态码有什么含意?服务端是如何实现的?

二面

  • 技术和算法问的比拟少,全程都在谈人生现实和职业规划。
  • 算法
  • 在一个给定数组中找到最大的两个数。
  • 为什么很多类要定义成抽象类?

三面

22 号星期二,接到 hr 面试预约电话。24 号下午视频面。面试官看起来斯斯文文的,亲和力也很好。自我介绍之后面试正式开始。

Java 根底:

  • ConcurrentHashMap 1.7 和 1.8 的实现有什么不同。
  • get() 和 size() 是否要加锁?如何加锁?
  • 泛型在编译期和运行期的作用。
  • 线程池是如何创立的?须要几个参数?别离是什么含意?

锁:

  • 乐观锁和乐观锁的区别。
  • 乐观锁和乐观锁的实现。(数据库、Java)
  • CAS syncronized 实现有什么区别。
  • violate 关键字。

数据库:

  • 数据库索引构造。
  • 数据库对 sql 语句的解析过程。

JVM

  • JVM GC 的优缺点。
  • 假如一个场景,要求 stop the world 工夫十分短,你会怎么设计垃圾回收机制?
  • 有没有用过 JVM 相干工具?

算法

  • 海量数据 top K 算法,讲一下思路。

设计模式

  • 策略模式和 XX 模式的区别。(这里因为没有看过其余设计模式,过后问这个题目的时候脑袋都是懵的。)

一二面面的都还能够。第三面面的不是很好。吃完饭查了下状态间接进入人才库了,比拟遗憾。为了下次更好的应答面试官, 我整顿了一些 Java 学习笔记跟面试材料,在这里也分享给同样须要面试的 Java 程序员敌人们,须要的可【点击此处】获取!


正文完
 0