三面美团Java岗,java开发岗位问题

蚂蚁金服电话一面

第二天早上10点第一轮电话面试,我们大约聊了半个小时,关于学历工作经验这些都没有问到,对方关注的是一些基本的知识,具体记得的几个问题:

  1. Spring或者数据库的事物隔离级别和传播特性是怎样的
  2. JDBC的目的是什么,是一种接口还是一种实现
  3. 用过哪种连接池,为什么要用连接池
  4. 用过哪些缓存,用于什么场景,redis怎么实现分布式锁
  5. 然后问我是否熟悉分布式系统的设计和应用,熟悉分布式框架、中间件、数据库等机制,能不能对分布式常用技术进行合理应用解决问题。

前边的几个问题对我来说很简单,后来接着一波问题说实话如果不是我提前做好了功课,回答起来也不会特别流畅,因为对方连续追问了几层问题,还好我接住了。(我觉得面试前必要的功课不可少!!)

image.png

本来我以为没戏了,一个星期后通知我需要现场二面,这对我来说是更大的挑战也是绝佳的机会,因为我知道,我离我的梦想又近了。二面我准备了3天,并且看了他的招聘要求,和职位介绍,把提到的技术点我都重新捋一遍,尽可能让自己准备充足更有信心。

蚂蚁金二面

image.png

上午9点面试,面试官除了个子没我高之外,面貌很英俊,比较爱笑,这让我也不那么紧张了,感觉眼缘不错,氛围也不错,做了简单的自我介绍之后,他直奔主题问了我一连串问题,我面试完做了整理分享给大家:

  1. 自我介绍(工作年限 毕业学校专业 英语几级)
  2. 介绍项目,在项目中用到了redis实现用户点赞功能和关注功能,项目中为什么用redis以及怎么实现相关功能
  3. Java的集合框架(主要是HashMap,1.7和1.8之间的区别)
  4. 项目中用过的开源框架,为什么要用spring 和 mybatis
  5. spring的核心功能是什么,介绍一下AOP以及怎么实现的,jdk代理和cglib代理的区别
  6. 数据库的四大特性,事务的隔离级别,幻读。
  7. 计算机网络都学了什么(类似说书上的目录),OSI七层每层的任务,数据链路层的功能(答得不全)和协议。
  8. 数据结构都学了什么,排序算法最快的是哪种说说原理,哪些是不用申请额外空间的
  9. 树的非递归遍历以及三种遍历知道哪两种不能确定一棵树
  10. 介绍一下二叉平衡树
  11. 是否看过jdk源码,说说你说看过的
  12. 说说concrrent包下的类,然后问了一下reentrantlock
  13. 对于Java高并发了解多不多,怎么处理一些秒杀问题

image.png

最后

给读者们一个小福利,有需要这些资料的朋友们可以点击我,即可免费领取资料!

ActiveMQ消息中间件面试专题

  • 什么是ActiveMQ?
  • ActiveMQ服务器宕机怎么办?
  • 丢消息怎么办?
  • 持久化消息非常慢怎么办?
  • 消息的不均匀消费怎么办?
  • 死信队列怎么办?
  • ActiveMQ中的消息重发时间间隔和重发次数吗?

ActiveMQ消息中间件面试专题解析拓展:

BAT面试文档:ActiveMQ+redis+Spring+高并发多线程+JVM


redis面试专题及答案

  • 支持一致性哈希的客户端有哪些?
  • Redis与其他key-value存储有什么不同?
  • Redis的内存占用情况怎么样?
  • 都有哪些办法可以降低Redis的内存使用情况呢?
  • 查看Redis使用情况及状态信息用什么命令?
  • Redis的内存用完了会发生什么?
  • Redis是单线程的,如何提高多核cpu的利用率?

BAT面试文档:ActiveMQ+redis+Spring+高并发多线程+JVM


Spring面试专题及答案

  • 谈谈你对 Spring 的理解
  • Spring 有哪些优点?
  • Spring 中的设计模式
  • 怎样开启注解装配以及常用注解
  • 简单介绍下 Spring bean 的生命周期

Spring面试答案解析拓展

BAT面试文档:ActiveMQ+redis+Spring+高并发多线程+JVM


高并发多线程面试专题

  • 现在有线程 T1、T2 和 T3。你如何确保 T2 线程在 T1 之后执行,并且 T3 线程在 T2 之后执行
  • Java 中新的 Lock 接口相对于同步代码块(synchronized block)有什么优势?如果让你实现一个性能缓存,支持并发读取和单一写入,你如何保证数据完整性。
  • Java 中 wait 和 sleep 方法有什么区别?
  • 如何在 Java 中实现一个阻塞队列?
  • 如何在 Java 中编写代码解决生产者消费者问题?
  • 写一段死锁代码。你在 Java 中如何解决死锁?

高并发多线程面试解析与拓展

BAT面试文档:ActiveMQ+redis+Spring+高并发多线程+JVM


jvm面试专题与解析

  • JVM 由哪些部分组成?
  • JVM 内存划分?
  • Java 的内存模型?
  • 引用的分类
  • GC什么时候开始?

JVM面试专题解析与拓展!

BAT面试文档:ActiveMQ+redis+Spring+高并发多线程+JVM


M 内存划分?

  • Java 的内存模型?
  • 引用的分类
  • GC什么时候开始?

JVM面试专题解析与拓展!

[外链图片转存中…(img-ImtBYghu-1626689952537)]

相关文章

在笔者近 3 年的 Java 一线开发经历中,尤其是一些移动端、用...
这一篇文章拖了有点久,虽然在项目中使用分布式锁的频率比较...
本文梳理总结了一些 Java 互联网项目中常见的 Redis 缓存应用...
书接上回,消息通知系统(notification-system)作为一个独立...
Redis 是目前互联网后端的热门中间件之一,在许多方面都有深...
在Java Spring 项目中,数据与远程数据库的频繁交互对服务器...