一个程序媛的面试之路(字节、百度,中级java面试问题大全及答案大全

目前拿到了字节,百度,网易(白菜价,已拒),美团,小米的意向书,等最终结果通知的是华泰(已收到体检通知),招行信用卡,阿里

招银(资料审查中),网易互娱(二面没去),浦发(没去体检),农行(面试通过,没去笔试),腾讯(两次被捞都是一面挂,第三次还是深圳拒绝了面试),银联(笔试完),微博(拒绝了现场面试)

还有各种笔试挂的(流利说,爱奇艺,小红书,B站),后续拒绝了很多面试,再也没有精力再去了,持续躺尸中…

面试的时候真的是屡战屡败(阿里三次已回绝),真的要好好调整自己,面试过程中要充分思考,祝大家都收获自己满意的Offer

一. 字节跳动(北京)

===========

字节跳动是提前批面的第一家公司,部门也是核心部门,但是但是当时脑抽投的北京岗位,很后悔没投南京的,日常眼馋实验室同学的南京字节Offer

面试体验很好,给了自己信心和很多面试的查漏补缺以及思考方式,感恩。

还记得视频面紧张的不行,因为代码能力比较弱,很怕手撕代码,一面面试官看我没写出来,还换了一道特别简单的判断有无环,真的是感恩。

一面+二面+三面:(视频面)

==============

  • Redis数据类型的底层数据结构,String类型和SortedSet类型

  • 中断处理中cpu现场环境存储在哪里

  • MySQL中有a,b两列各自建立索引,在进行查询的时候,走哪个索引,怎么设计

  • 三面主要问项目中的消息中间件和场景题

  • 代码题目:leetcode 85最大矩形 , 判断链表有无环,手写hashmap

好多不记得了。。

还记得当时收到四面通知的崩溃,以为结束了,都在躺尸的时候收

《一线大厂Java面试题解析+后端开发学习笔记+最新架构讲解视频+实战项目源码讲义》

【docs.qq.com/doc/DSmxTbFJ1cmN1R2dB】 完整内容开源分享

到了四面通知。。

四面(视频面)

========

  • 灵魂拷问:觉得自己前面几轮面的怎么样,为什么觉得三面没面好,三面面试官提出的问题下面有去思考吗

  • 针对被三面面试官问懵的项目问题,开始深挖和设置场景题…

  • 如何比较对于同一个问题的两种算法的优劣性,不能计算时间复杂度和空间复杂度(信息增量)

二. 百度(上海)

=========

一面(视频面)(1h20min)

  • 代码题:单例模式,数组的题

  • 阻塞队列实现

  • 怎么设计一个线程池的各个参数,各种场景下线程池的设计

  • cas底部是怎么实现的保证原子性(底部到硬件指令)

  • 最后,讲一下虚拟机的知识点吧

  • 只记得一些典型的问题了,一面还是基础问的比较多,细致~

二面(电话面)

  • 聊项目.gif(感受到一丝凉意)

  • hadoop和spark区别,为什么用spark,优势

  • 为什么用这个消息队列,高可用,保证消息不丢失的机制

  • 为什么用线程池,线程池有哪些,以及应用场景

  • 垃圾回收的知识,为什么要垃圾回收,可达性分析,回收算法,垃圾回收器

  • 写sql语句,查询各门科目成绩都>80的学生姓名

  • 聚簇索引和非聚簇索引

  • mysql事务和隔离级别,默认的隔离级别

  • sychronized和可重入锁的区别

  • ORM框架——mybatis

  • Spring和Springboot (我以为会被挂的地方,不太懂Spring)

三面(电话面)

  • 是个小姐姐,技术加HR面综合的感觉

  • 主要问的分布式的项目以及Spark项目,没有基础知识和代码题

  • 觉得自己的缺点是什么,周围人对你是什么评价,最有成就感的一件事

Java程序媛的秋招历程(附字节,阿里,百度,网易,美团等面经)

三. 网易(杭州)

=========

几乎和百度同时进行~

一面(视频面)

  • 为什么研究方向是机器学习,不做算法。。(我也想啊,这不是菜嘛)

  • 聊项目.jpg,主要聊了分布式的项目,源码等等

  • 那我们来问一下java知识吧

  • java内存区域

  • java有哪些等待通知机制

  • Countdownlatch了解嘛,底层怎么实现的?

  • 说下AQS

  • 什么时候申请堆外内存

  • 内存映射以及内存映射的方法是哪个

  • 分布式缓存redis,怎么做成分布式

  • 一致性hash

  • 不用redis cluster怎么做?

  • redis cluster一个宕机了会有哪些处理?

  • 分布式数据库了解吗?

  • 发布订阅模式,以及一个消费者组集群模式怎么消费

  • 了解Spring吗(不了解不清楚别问我我没看)

  • web下服务器怎么做负载均衡的?

二面(视频面)

  • 项目和场景题

  • 负载均衡的几种方法

  • 缓存击穿,雪崩的应对方法,详细讲

HR面(现场面)

  • 常规HR问题

Java程序媛的秋招历程(附字节,阿里,百度,网易,美团等面经)

四. 阿里(等最终通知)

============

一面(电话面)

  • 项目相关:有调研其他的消息中间件吗?为什么用rocketmq?

  • 线程池的原理以及各种线程池的应用场景

  • 线程池中使用有限的阻塞队列和无限的阻塞队列的区别

  • 如果你发现你的sql语句始终走另一个索引,但是你希望它走你想要的索引,怎么办

  • mysql执行计划

  • 数据库索引为什么用b+树(磁盘io的深入了解)

  • 你在做sql优化主要从哪几个方面做,用到哪些方法工具

二面 + 三面 + 交叉面 + HR面(电话面)

(我已经忘完了,忘记记录面经了)

在坐地铁的路上面了个疑似交叉面的面试,刚开始以为是挂了,然后被别的部门捞了,也没听清楚是什么部门,内心很崩溃,当时面的感觉是秋招面的最差的一次。

却意外地等到了HR面,才知道前一面可能是交叉面(来自从没体验过交叉面的疑惑)~~

面试官让我帮忙推没有面过的简历,太难找了,问了别的实验室也没有,尽力啦,等最终通知!!

Java程序媛的秋招历程(附字节,阿里,百度,网易,美团等面经)

五. 美团(上海)

=========

一面(电话面)

太太遥远了,不记得了.jpg

二面+三面+HR面(现场面)

距离一面有1个多月,期间收到了HR通知去上海现场面,但当时有些懒得跑,想等南京现场面,就木有去,终于等到南京现场面

  • 线程池的原理以及各种线程池的应用场景

  • 项目深挖,画出架构图,加MQ源码

  • MQ不能保证只会消费一次,如果让你在MQ中加入,你要怎么设计

  • 消息去重保证幂等性有哪些方法

我是只有七秒记忆么,这是最近面的一个了,大多还是不记得了

Java程序媛的秋招历程(附字节,阿里,百度,网易,美团等面经)

六. 小米(南京)

=========

一面(现场面 2h)

去了南京小米公司面了一波,整整两个小时让我怀疑人生

  • 问了研究方向

  • 项目中使用的MySQL版本号,使用哪个引擎,为什么

  • MySQL两个引擎的区别,为什么INNODB使用聚簇索引,而不用MyISAM行指针的形式

  • SQL优化的几个方面

  • Redis的数据类型,SortedSet底部实现

  • Redis分片的几种形式,Redis Cluster

  • 介绍一下JVM知识

  • Java线程池原理及其应用场景

  • Concurrent并发包里几个类介绍一下

  • HashMap求hash值的时候,无符号右移16位的意义

  • 解决hash冲突的几种方法,在哪些地方用哪种

  • tcp粘包和拆包的方法,tcp可靠性通过哪几个方面保证

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当谈到Java中级面试题时,以下是一些常见的问题及其答案: 1. 什么是Java中的多线程?如何创建和启动一个线程? 答:多线程是指在一个程序中同时执行多个线程,每个线程都有自己的执行径。可以通过继承Thread类或实现Runnable接口来创建线程,并使用start()方法启动线程。 2. 什么是Java中的异常处理?Java中的异常处理机制是如何工作的? 答:异常处理是一种用于处理程序运行时错误的机制。在Java中,异常由抛出(throw)和捕获(catch)两个关键字来处理。当发生异常时,程序会抛出异常,然后通过try-catch语句块来捕获并处理异常。 3. 什么是Java中的集合框架?列举一些常见的集合类。 答:集合框架是Java提供的一组接口和类,用于存储和操作数据。常见的集合类包括ArrayList、LinkedList、HashSet、HashMap等。 4. 什么是Java中的反射?如何使用反射机制? 答:反射是指在运行时动态获取类的信息并操作类的属性和方法。可以使用Class类的相关方法来获取类的信息,并使用Constructor、Method和Field等类来操作类的构造函数、方法和属性。 5. 什么是Java中的IO流?Java中的IO流分为几种类型? 答:IO流是用于处理输入和输出的机制。Java中的IO流分为字节流和字符流两种类型。字节流用于处理二进制数据,字符流用于处理文本数据。 6. 什么是Java中的泛型?如何使用泛型? 答:泛型是指在编译时不指定具体类型,而是在运行时动态确定类型。可以使用泛型类、泛型接口和泛型方法来实现泛型。 7. 什么是Java中的注解?如何使用注解? 答:注解是一种用于提供元数据的机制。可以使用注解来为类、方法、变量等添加额外的信息。可以通过@符号来使用注解。 8. 什么是Java中的序列化?如何实现对象的序列化和反序列化? 答:序列化是指将对象转换为字节流的过程,反序列化是指将字节流转换为对象的过程。可以通过实现Serializable接口来实现对象的序列化和反序列化。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值