前言

本篇题材来自我的校友投稿,他在最近的秋招校招中拿到了蚂蚁金服的实习生Offer,整体思路和面试题目由面试本人——小林提供(译名)

由于作者面试过程中高度紧张,本文中只列出了自己还记得的部分题目。

经历了漫长一个月的等待,终于在前几天通过面试官获悉已被蚂蚁金服录取,这期间的焦虑、痛苦自不必说,知道被录取的那一刻,一整年的阴霾都一扫而空了。

笔者面的是阿里的Java研发工程师岗,面试流程是4轮技术面+1轮hr。

文末可以获取面试资料参考

一面(基础面:大约60分钟)

  1. 自我介绍
  2. 对象相等的判断,equals方法实现。 Hashcode的作用,与 equal 有什么区别?
  3. Java中CAS算法?
  4. G1回收器讲一下?
  5. HashMap,ConcurrentHashMap与LinkedHashMap的区别
  6. 如何在多线程环境下使用Map,ConcurrentHashMap原理,ConcurrentHashMap如何加锁。
  7. 多线程并发的同步实现,有两个方法,每个方法里有a部分代码和b部分代码,我要让两个线程分别执行两个方法,并且让他们运行完a部分代码再一起向下执行,如何实现。
  8. TCP连接中的三次握手和四次挥手,四次挥手的最后一个ack的作用是什么,为什么要time wait,为什么是2msl。
  9. aio,nio,bio的了解
  10. ReetrantLock和synchronized的区别。
  11. Java有哪些悲观锁的实现?
  12. Java有哪些类实现了乐观锁?

二面(二面就死抓多线程问)

  1. 线程池有哪些参数?分别有什么用?如果任务数超过的核心线程数,会发生什么?阻塞队列大小是多少?
  2. 数据库连接池介绍下,底层实现说下
  3. hashset底层实现,hashmap的put操作过程
  4. 说说HaspMap底层原理?再说说它跟HaspTable和ConcurrentHashMap他们之间的相同点和不同点?
  5. 说说B+树和B树的区别,优缺点等?
  6. 算法题,对一个链表进行归并排序,链表可能有环
  7. 怎么实现一个线程安全的计数器?
  8. 原子类AtomicInteger实现原理是什么?和你设计的计数器优劣比较?CAS怎么实现原子操作的?
  9. Java中的锁有什么?synchronized与Lock的区别?公平锁和非公平底层怎么实现的?AQS原理详细介绍一下?
  10. 你在项目中一般怎么调优JVM的呢?
  11. 说一下GC吧,什么时候进行Full GC呢?
  12. 你了解哪些收集器?CMS和G1。详细谈谈G1的优点

三面(Redis和mysql也要掌握,面试也是必问)

  1. 了解哪些排序算法,讲讲复杂度
  2. 手撕归并排序
  3. Redis有哪些数据结构?底层的编码有哪些?有序链表采用了哪些不同的编码?
  4. redis的hash数据结构最多能存储多少个元素
  5. 自己如何实现RPC?
  6. mysql默认存储引擎?MyISAM、InnoDB、MEMORY的区别
  7. 什么是幻读,如何解决
  8. 事务隔离级别有什么?通过什么来实现的?分别解决了什么问题?
  9. 乐观锁与悲观锁的使用场景

四面(这里问的技术问题就较多了 分布式架构 dubbo spring cloud Kafka 数据库)

  1. 介绍对你技术能力帮助最大的项目,重点讲架构设计思路
  2. 分布式全局唯一ID怎样来实现?
  3. dubbo的生产者如何发布服务,注册服务,消费者如何调用服务?
  4. dubbo负载均衡的策略有哪些?一致性哈希详细聊一下?
  5. 分布式session如何实现的
  6. 微服务你的理解?以及常用的微服务方案dubbo、spring cloud的比较?
  7. Kafka怎么保证数据可靠性?
  8. 数据库主从同步数据一致性如何解决?技术方案的优劣势比较?
  9. 分布式锁的实现方式你知道有哪些?主流的解决方案是什么?
  10. Spring两大特性?AOP和IOC
  11. Spring的初始化过程?Spring bean的生命周期?
  12. 多个RPC请求进来,服务器怎么处理并发呢?

HR面(见招拆招)

常规问题为主

遇到什么挫折

这种问题主要考察面试者遇见困难是否能坚持下去,并且可以看出他的解决问题的能力。

可以简单描述挫折,并说明自己如何克服,最终有哪些收获。

职业规划

表明自己决心,首先自己不准备继续求学了,必须招工作了。然后说下自己不会短期内换行业,或者换工作,自己比较喜欢,希望可以坚持几年看自己的兴趣再规划之类的。

对阿里的认识

这个比较简答,夸就行了。

有什么崇拜的人吗

我说了詹姆斯哈登,hr小姐姐居然笑了。这个可以说一些IT大牛。

希望去哪里就业

这个问题果断回答该公司所在的城市啊。

其他问题

有什么兴趣爱好,能拿得上台表演的有吗 记忆深刻的事情

总结

面试建议是,一定要自信,敢于表达,面试的时候我们对知识的掌握有时候很难面面俱到,把自己的思路说出来,而不是直接告诉面试官自己不懂,这也是可以加分的。

以上就是蚂蚁技术四面和HR面试题目,以下最新总结的最全,范围包含最全MySQL、Spring、Redis、JVM等最全面试题和答案,仅用于参考

如何获取免费面试参考资料?

资料获取方式:

私信我 【面试资料】即可免费获取!

**Java有哪些悲观锁的实现_阿里秋招Java研发工程师岗:来自校友的面试还原(已拿Offer)...相关推荐

  1. **Java有哪些悲观锁的实现_面试4连问:乐观锁与悲观锁的概念、实现方式、场景、优缺点?...

    推荐阅读: 数据库面试4连问:分库分表,中间件,优缺点,如何拆分? 终极手撕之架构大全:分布式+框架+微服务+性能优化,够不够? 消息队列面试,你能顶得住面试官这波10大连环炮的攻势吗? 01 乐观锁 ...

  2. **Java有哪些悲观锁的实现_「Java并发编程」何谓悲观锁与乐观锁,Java编程你会吗...

    何谓悲观锁与乐观锁 悲观锁 乐观锁 两种锁的使用场景 乐观锁常见的两种实现方式 1. 版本号机制 2. CAS算法 乐观锁的缺点 1 ABA 问题 2 循环时间长开销大 3 只能保证一个共享变量的原子 ...

  3. **Java有哪些悲观锁的实现_淘宝Java研发面试:Redis+Mybatis+高并发+线程池

    在面试的这件事上,我做了大量的"功课",首先我研究了几乎所有大厂的面试题,还和负责招聘工作的几个朋友,详细的探讨了 Java 面试所要涉及的知识点 并发 简单描述下悲观锁乐观锁 J ...

  4. 社招java阿里_阿里社招Java面试题总结一

    面试题 1.String和StringBuffer的区别 2.gc的概念,如果A和B对象循环引用,是否可以被GC? 3.Java中的内存溢出是如何造成的 4.String s = "123& ...

  5. 阿里巴巴java社招面试_阿里社招Java面试题总结——面试官分享

    面试题 1.Java中的内存溢出是如何造成的 2.gc的概念,如果A和B对象循环引用,是否可以被GC? 3.Error.Exception和RuntimeException的区别,作用又是什么? 4. ...

  6. Java简单演示悲观锁

    每博一文案 看过这样一句话,时间在不断的筛选你身边的人和事.当你什么都不在乎的时候,你的人生才刚刚开始. 当我们什么都不在乎时,会发现什么都可能会进行经历,但什么都一定会过去,起始都会离开的或早或晚吧 ...

  7. 阿里java社招_阿里社招有多难?2020年最新阿里java面经分享

    你去阿里面试过吗?近期有很多的小伙伴都在问,阿里java社招难度如何呢?下面就让我们一起通过一个小伙伴的社招面经来了解一下吧!具体涵盖了面试题分享哦. 我是从三月底开始面试的,前后面了阿里.百度.网易 ...

  8. java编写桌球游戏素材小球图片_你学不好Java还是有原因的!拿走这套Java系统教程,自学必备...

    很多同学都遇到过一种情况:就是无论自己怎么学Java,到头来发现学的都是皮毛,当真正去用python去做一个项目的时候,脑袋里面一片空白.完全不知道从何做起! 那是你没有系统的学过一次Java,现在的 ...

  9. java笔试题_公司真题 | 用友2018秋招Java笔试题(四)

    公司真题 | 用友2018秋招Java笔试题(三)答案: 1.正确答案 A B 2.正确答案 A 3.正确答案 D 4.正确答案 B 5.正确答案 A E 6.正确答案 B 7.正确答案 C D 8. ...

最新文章

  1. C# 中字符串string和字节数组byte[]的转换,16 进制字符串转 int的方法
  2. 阿里NASA计划:城市大脑成智能研究第一平台
  3. java derby 用户安全_Java 7u51安全权限变化,运行derby server被拒,解决方法
  4. SY-SUBRC 的含义
  5. 网站假设php,PHP个人网站架设连环讲(一)
  6. 深度学习训练的时候gpu占用0_26秒单GPU训练CIFAR10,Jeff Dean也点赞的深度学习优化技巧...
  7. Socket选项之SO_RCVTIMEO 和SO_SNDTIMEO
  8. excel匹配_「最全」Excel中查找匹配函数
  9. JavaScript 误区
  10. asp,jsp,php等web开发必懂技术---什么时候使用静态页,什么时候必须使用动态页...
  11. 工作上碰到的技术问题积累
  12. RN如何使用原生的AndroidUI组件
  13. hexo之icarus主题的美化修改以及简单的SEO配置
  14. 验证输入是否为正确的组织机构代码
  15. elementui的使用问题
  16. [概念] 敏感性分析(Sensitivity Analysis) 和龙卷风图(tornado diagram)
  17. python制作闯关答题软件_Pygame制作答题类游戏的实现
  18. 外贸通:1.5亿用户信息遭泄露,又一大公司泄露用户数据!健身App被黑客攻破
  19. 小程序Cannot set property 'userInfo' of undefined
  20. MYIR zynq fpga 学习过程(5)使用PLL/MMCM实现时钟倍频

热门文章

  1. C# 多线程并发锁模式-总结
  2. Hadoop HDFS概念学习系列之熟练掌握HDFS的Shell访问(十五)
  3. 重磅 |“金砖”电商报告:5年后金砖五国网络零售将超3万亿美元
  4. JAVA并发编程实战---第三章:对象的共享
  5. ROSA 2012 Enterprise Linux Server 发布
  6. 远程管理MAC OS
  7. 二叉树 -php实现先序、中序、后序遍历二叉树
  8. 在Apache上搭建pywebsocket提供html5的websocket服务
  9. 超简单的话解释C#事件-源码示例
  10. [Swift]LeetCode513. 找树左下角的值 | Find Bottom Left Tree Value