Java开发还会吃香吗?万字解析!

写在前面

最近,很多小伙伴出去面试都被问到了Spring问题,关于Spring,细节点很多,面试官也非常喜欢问一些很细节的技术点。所以,在 Spring 专题中,我们尽量把Spring的每个技术细节说清楚,将透彻。

概述

自定义组件要想使用Spring容器底层的一些组件(比如:ApplicationContext、BeanFactory等),此时,只需要让自定义组件实现XxxAware接口即可。此时,Spring在创建对象的时候,会调用XxxAware接口定义的方法,注入相关的组件。

一、 电面:

自我介绍

项目情况:

  • 对你来说影响最大的一个项目(该面试中有关项目问题都针对该项目展开)?
  • 为什么会想做这个项目?这个项目的ideal是谁提出来的?
  • 项目中如何实现的大数据的传输和存储
  • 项目中哪一部分最难攻克?如何攻克?

基础知识考察:

  • 模块化的好处
  • Htttp协议
  • hashmap和concurrenthashmap区别及两者的优缺点
  • 对MySQL的了解,和oracle的区别
  • 对设计模式的看法和认知
  • 有哪些设计模式
  • 如何实现分布式缓存
  • 多线程如何避免死锁
  • Java的垃圾回收机制
  • 对Runtime的了解

电面过程中非常注重基础知识的考察,面试前务必对基础知识内容进行复习和梳理。基础知识考察的内容一般会围绕项目内容进行展开,在前期对项目介绍进行准备时需适当换位,思考面试官的提问逻辑,避免给自己设下陷阱。

Java开发还会吃香吗?万字解析!_第1张图片

二、 现场面:

Java开发还会吃香吗?万字解析!_第2张图片

背景了解:

  • 为什么要选择编程这条路
  • 何时开始编程
  • 如何进行自学
  • 阅读过那些书籍
  • 项目考察
  • 项目运行过程中成员是否曾就某一点发生争执?作为Leader你是如何解决的?具体事例?
  • 项目最终实现效果
  • 项目具体部分使用的设计模式并简述选择理由
  • 项目有何需改进之处并初拟改进方案

想问的问题

技术面中项目占了相当一部分时间,项目中从技术到个人团队领导能力,从完成执行能力到思想灵活度,都是面试官希望得到的信息。因此,必须对自己的项目多方面展开准备,项目回顾的过程中需不断思考改进方案和具体措施。

三、 HR面:

  • 业余爱好
  • 为什么不参加竞赛?
  • 你觉得你在项目运行过程中作为组长是否最大限度发挥了组员的优势?具体事例?
  • 如何看待阿里在大数据方面的投入?对阿里的发展有什么建议?对蚂蚁金服的发展有什么看法?
  • 职业规划,今后想发展的工作方向
  • 家乡在哪里,是否愿意长期在杭州发展?
  • 薪酬问题及入职情况

适当藏拙很重要,因为作为面试者,我们很难判断什么不足对公司来说是无法容忍的,如果临场随性发挥,就容易出现语言漏洞,从而被作为切入点暴露自身缺陷。因此,面试前要仔细准备各种问题,对语言进行推敲,尽量将话题引向有利于自己的方向。

蚂蚁金服面试题大总结

蚂蚁金服Java岗一面:

  1. HashMap&ConcurrentHashMap再谈谈一致hash算法?
  2. 乐观锁&悲观锁?
  3. 可重入锁&Synchronize?事务四大特性?
  4. 事务的二段提交机制?
  5. 聚簇索引&非聚簇索引?
  6. 用自己的实践经历说一下索引的使用场景(说一个就要举一个例子)?
  7. 当前读&快照读?
  8. 类加载过程?
  9. 双亲委派机制及使用原因?
  10. 说说GC算法?
  11. Http&Https的区别Https的加密方式线程池的核心参数和基本原理线程池的调优策略你有什么职业规划

蚂蚁金服Java岗二面(从项目入手):

  1. 说说自己参与的项目,技术难度在哪里?
  2. Collections.sort底层排序方式?
  3. 排序稳定性?
  4. 具体场景的排序策略?
  5. Http请求过程,DNS解析过程三次握手四次挥手简述线程池和并发工具的使用?
  6. 数据库索引原理频繁老年代回收怎么分析解决Spring IOC、AOP?
  7. 讲讲SpringBoot/SpringCloud的一些应用?
  8. 阻塞队列不用java提供的自己怎么实现,condition和wait不能用拥塞窗口讲一讲,为什么要用慢启动算法负载均衡的原理?
  9. Redis的数据一致性问题(分布式多节点环境 & 单机环境)?
  10. 讲讲docker容器?
  11. 如何实现何高并发下的削峰,限流?
  12. 你有什么职业规划(每个面试官都要问这个问题,三面也是)

蚂蚁金服Java岗三面(大都聊人生):

  1. 项目中用的中间件的理解(Dubbo、MQ、Redis、kafka、zk)服务器雪崩是怎么造成的?
  2. 之前有这样的经历吗?
  3. 怎么防备?
  4. 高并发架构的设计思路以前项目中遇到的最大问题和解决策略生活中遇到的最大的挫折生活中遇到的最大的令你最有成就感的事情你有什么职业规划

如何快速更新自己的技术积累?

  • 在现有的项目里,深挖技术,比如用到netty可以把相关底层代码和要点都看起来。
  • 如果不知道目前的努力方向,就看自己的领导或公司里技术强的人在学什么。
  • 知道努力方向后不知道该怎么学,就到处去找相关资料然后练习。
  • 学习以后不知道有没有学成,则可以通过面试去检验。

我个人觉得面试也像是一场全新的征程,失败和胜利都是平常之事。所以,劝各位不要因为面试失败而灰心、丧失斗志。也不要因为面试通过而沾沾自喜,等待你的将是更美好的未来,继续加油!

以上面试专题的答小编案整理成面试文档了,文档里有答案详解,以及其他一些大厂面试题目,有需要的朋友点击这里即可免费领取

八年CRUD,疫情备战三个月,三面头条、四面阿里拿offer面经分享

八年CRUD,疫情备战三个月,三面头条、四面阿里拿offer面经分享

s.qq.com/doc/DSmxTbFJ1cmN1R2dB)**

[外链图片转存中…(img-6AE0jQ71-1620270387205)]

[外链图片转存中…(img-8KVznCcg-1620270387206)]

你可能感兴趣的:(程序员,java,后端,面试)