2019年,我的互联网技术岗(Java)面经合辑

本文摘自我的印象笔记
平时比较喜欢用印象笔记做记录,如果有什么值得分享的内容,我会不定期的整理成博客发布出来,敬请期待吧~

3月


3.5 腾讯上海一面,忘了哪个部门,他们是做c++和计算机视觉的,没问java知识(电话)

  • 进程通信方式
  • 死锁避免的算法
  • TCP三次握手
  • TCP拥塞控制
  • Linux命令 查看内存,cup消耗情况,还了解哪些命令
  • 一万个数中选最小的100个
  • 二叉树遍历方式
  • 快排时间复杂度

3.14 腾讯上海,还是一面。cdg企业发展事业群(电话)

  • TCP与UDP的区别
  • Hashmap与Hashtable区别
  • Java多线程操作时,如何处理并发问题(这里不太懂他的意思)
  • 二分查找过程
  • 快速排序的时间复杂度
  • 线程与进程
  • cookie与session,如果浏览器禁用了cookie,session还能建立吗?
  • 你的项目(课程共享平台)为什么不用springboot,而使用ssm?

4月


4.11 vivo 一面,主要问Java基础和项目(现场)

  • 线程和进程区别
  • 进程间通信
  • 线程出现异常会如何,程序会崩溃吗
  • try catch finally中的return情况
  • 口述算法思路: 剑指offer - 链表中环的入口节点
  • 聊项目,介绍项目,遇到哪些困难
  • 聊本科,因为读研专业跨度大
    回去等通知吧~

4.20 华为面试(现场)

  • 聊项目(重头戏)
  • Jvm垃圾回收机制(只回答了4种引用)
  • 内存泄漏
  • 分布式的优点(后来感觉面试官给我的提示更像是集群的优点)

4.28 海康威视面试

技术面(远程视频)

  • 聊项目
  • Spring中的单例
  • 线程安全的几种方法

HR面(远程视频)

  • 描述一个自己参与过的项目
  • 大学期间最成功的的事
  • 为什么跨专业
  • 你学习的动力(这个回答的有装X嫌疑,估计死在这了。我回答不需要动力,很自然的每天学到10点半...HR听完愣了)

5月


5.10 恒生轮流群面(现场)

  • 聊项目
  • 数据库常见索引
  • 使用索引的坏处
  • 数据库范式(你用到哪一种范式)

6月


美团一面(电话)

  • 说一种树的遍历算法
  • 哈希查找原理
  • 二分查找
  • Java基本变量(8种)
  • HashMap和HashSet的区别
  • 操作系统的进程调度(第二次不会了,要重视)

美团二面(电话)

面试时我已经半个多月没复习了,完全死马当活马医... 面试官语速很快,我因为慢慢吞吞答不上来,他语速更快了...

  • HashMap数据结构
  • 红黑树与AVL树的区别
  • HashMap中为何用红黑树而不用AVL树
  • 如何得到一个线程安全的HashMap
  • ConcurrentHashMap如何保证线程安全
  • JVM常用垃圾回收器
  • 说一说CMS
  • CMS如何进行标记
  • 哪些作为GCRoot
  • Redis了解多少?(说了5种数据结构)
  • Redis分布式锁
  • Linux查进程 ps -ef
  • Linux查看内存使用情况
  • 描述项目
  • 项目的亮点
  • 你设计的数据库遵循的范式

哈啰一面(电话)

  • 项目难点
  • MySQL InnoDB 为什么比其他引擎更好?
  • MyBatis了解吗?

接二连三的电话,再次打断了我安稳学习的状态。为了大厂offer,我开始了新一轮的面试准备!


猫眼一面(远程视频)

猫眼是我面过的所有企业中,考察最详细的!面试官很有耐心,态度很好。因为准备的比较久,加上面试多了有经验了,自认为除了手撕算法比较卡之外,其他都答得OK。虽然最后没有获得二面,但是经过这次面试,我也终于找到感觉了,也知道一个面试真理:要学就学难的,学原理看源码才是王道。

  • TCP/IP协议栈
  • TCP三次握手,改为两次行不行
  • TCP与UDP的区别
  • HTTP状态码了解哪些
  • 进程、线程和协程的区别
  • 操作系统的多级缓存(有疑问,不知答对没)
  • Linux怎么查看日志、项目运行状态(CPU、内存)
  • 项目中有遇到过JVM溢出的问题吗?
  • 遇到数据库慢查询,如何解决?
  • 数据库常见索引
  • 有没有使用Explain分析数据库性能?
  • Java的JDK、JRE、JVM的区别?
  • String存在jvm运行时数据区的哪里?
  • HashMap源码
  • 讲讲红黑树
  • ConcurrentHashMap源码
  • ConcurrentHashMap为何线程安全?
  • 线程池了解不
  • volatile关键字
  • 讲讲hashCode()
  • JVM频繁的FULL GC是什么原因?
  • HotSpot虚拟机的体系(讲了讲运行时数据区)
  • 垃圾回收算法(4种)
  • 什么情况下,对象会在方法区中(只答了大对象/class对象)
  • 讲讲Java内存模型,它的作用
  • 手撕算法:改造栈,O(1)时间内完成pop()、push()、getMin()

7月


涂鸦一面(电话)

一面的面试官听起来不像是专业面试官,说话语速偏慢。当时自己半桶水叮咚响,面试前以为拿offer应该妥妥的,殊不知面试过程中又暴露出许多问题。所幸获得了2面的机会。

  • 聊项目
  • 课程的搜索功能
  • 电商项目的秒杀系统如何设计
  • 如何保证项目的线程安全
  • 常见的加锁机制
  • ArrayList和CopyOnWriteArrayList线程安全对比
  • 了解哪些集合
  • 对涂鸦公司的了解
  • Java架构的了解(不太明白什么意思)
  • 分布式的好处(第二次了)
  • 描述运行时数据区(被点破:方法里的局部变量其实是线程安全的哈哈哈,因为在虚拟机栈。但好像局部变量的线程安全。。没意义吧~)
  • Object a = new Object() 过程(新建类的过程) - 没答上第一步 - 判断类加载
  • 说说类加载
  • 双亲委派
  • 双亲委派的好处

涂鸦二面(现场)

因为比较自信,一面通过后二话不说就订高铁去了杭州现场。以为能拿个offer回来然后拍拍屁股离职,被面试官怼得找不着北后,才知道自己太naive了。

  • 聊项目(随便挑一个讲讲,反正没一个看的上眼
  • 作为产品负责人,你怎么设计你的项目(靠抄)
  • 如何使用git进行团队协作(手工复制粘贴)
  • aqs锁(劝退开始)
  • jvm类加载(要求说全说细)
  • 哪些可以作为gcroot(给我说全)
  • 联合索引的问题(我会)
  • 数据库的三大范式(我也会)

面试官OS:我原本不想录你的,结果你还是会一些。那我还是别问了,万一你答上来太多我不录你...

虽然面试完很气,除了手撕代码还想手撕面试官,但也知道自己有很多不足,短时间内先别面试好好积累吧。特别是项目这块,真没一个拿得出手的。

9月


京东一面

【待填坑】

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • java 接口的意义-百度 规范、扩展、回调 抽象类的意义-乐视 为其子类提供一个公共的类型封装子类中得重复内容定...
    交流电1582阅读 2,279评论 0 11
  • 本文作者在一年之内参加过多场面试,应聘岗位均为 Java 开发方向。在不断的面试中,分类总结了 Java 开发岗位...
    TheOne_6e96阅读 930评论 0 9
  • 秋招正式结束,最后感谢百度给予的认可,真的有种受宠若惊。简单回顾一下秋招。也给出自己的面经,文章最后列出两个自己看...
    DuBetter阅读 1,080评论 1 5
  • 抽象,继承,封装,多态 下面将一一解释.抽象是将一类对象的共同特征总结出来构造类的过程.包括数据抽象和行为抽象两部...
    高珊珊aim阅读 966评论 0 0
  • 前言 审核时候弹出一堆错误: 解决方法 是因为其中的framework包含x86_64,i386架构导致,所以对有...
    freesan44阅读 474评论 0 0