阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

分享一个好消息,最近一个经常与我交流技术的粉丝朋友成功入职阿里!暂且叫他阿布吧。

绝大多数技术人都有个阿里梦,阿布也不例外。在准备跳槽的日子,阿布也到其它的大厂面试过,最终他选择了阿里。阿布在10月份入职阿里菜鸟物流研发部,主要负责物流网络系统研发,级别是P6+。

对很多人来说,每年的双11都是个大挑战。但是在阿里内部,其实阿布他们挺闲的,只需要通宵值班盯着系统的运行状况,出了问题就忙,不出问题还是正常的。(一般都不会出问题【手动滑稽】)

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

阿布去阿里面试一共4面,都是技术面,7年的工作经验,加上前期的充分准备,勉强不那么费力。

  • 第1面主要问算法,像sort排序方法,还有HASHMAP线程安全,还有spring的IOC和AOP及bean生命周期等;
  • 第2面问了很多JVM;
  • 然后第3面好像问了kafka,还有网络安全https,死锁等问题;
  • 第4面让他画了个架构图,根据架构图展开了提问,答上来之后就只用等着确定入职时间了。

今天主要跟大家分享下阿里第2面关于jvm的面试内容。阿里菜鸟P6除了基础之外,源码是必不可少的,大厂面试的内容其实都是类似的。以下是面试官提出的问题(阿布面试结束后整理的,大体没差):

1、jvm类加载机制,每一步分别做了什么?

2、JVM运行时数据区包括哪些部分,垃圾收集有哪些算法,各自的特点?如何确定被清除的对象

JVM运行时数据区包括哪些部分?

垃圾收集有哪些算法,各自的特点?

如何确定被清除的对象?

3、JVM中的垃圾回收器有哪些?区别是什么?

4、Mysql索引类型和区别?聚簇索引和非聚簇索引的区别?

5、事务的隔离级别

6、SpringBean创建过程中的用到了哪些设计模式?

7、谈谈IOC和AOP

8、概述下spring中bean的生命周期

9、从源码的角度,描述一下SpringMvc的整个访问或者调用流程。

10、谈谈线程池的参数列表和拒绝策略

11、请概述AQS

第2面的时候,阿布感觉面试官想用JVM来撵压他,像运行时数据区,垃圾收集算法等,还有事务及Springmvc整个流程,AQS等,问的很多。

面试官:“简单谈谈IOC和AOP。”

阿布当时的回答确实也比较简单,源码这块他读了好几遍,IOC是控制反转,主要是对Bean的管理,然后还有对象依赖注入,阿布讲了它的多种注入方式,然后还讲了bean的生命周期,面试官就没往下问了。

关于AOP阿布重点讲了动态代理模式,还有AOP的源码实现,面试官点了头也没问了。

面试官:“关于从源码的角度,描述一下SpringMvc的整个访问或者调用流程。”

SpringMVC大家一定用过,但是源码才是你和别人不一样的地方。Springmvc的核心是一个servlet,DispatcherServlet,用户浏览器提交到DispatcherServlet,由这个类进行分发,然后由这个类找到具体处理方法,然后再递交到Handler并执行这个Handler,执行完后返回给ModelAndView,最后就是进行视图解析,响应结果到浏览器。面试官当时说了思路正确,也就没多问了。

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案springmvc调用的核心流程图

一般大厂面试基本上所有的问题都是结合具体场景来问你问题,不仅要会使用这些技术,还要知道为什么要用这个技术,以及如何做到高可用等等。对于社招,我感觉是技术问的相对来说更加深入,所以对有些源码还是要了解点,比如并发相关的原理,是经常被问到的。JVM就更不用说了,几乎是必问到的。

我们所有的程序都运行在Java虚拟机上,只有对Java虚拟机底层原理进行深入的学习,不管是JVM内存区域、堆的分代与垃圾回收算法、JVM性能调优。在全面理解JVM的运行机制后,我们就能成为更优秀的Javaer。

同时很多的Java开发朋友在面试时面对JVM总会有答而不全,答非所问的情况,对学习Java虚拟机这一块今天在这笔者特地免费分享一份精心整理的JVM与性能调优核心实战知识点笔记及JVM面试题解析(基础,进阶,实战)给大家!

由于文章篇幅过长,小编整理成一套PDF文档的格式把JVM以及性能优化解析整理完成,文档获取方式:

需要获取得话麻烦一键三连之后看下图小助理的微信:(vip1024x)添加即可免费获取到哦

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

目录展示

从五个方面全面解析了JVM、性能优化及述写了面试常问解析

1.JVM内存区域划分

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

2.JVM执行子系统

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

3.垃圾回收器和内存分配策略

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

4.编写高效优雅Java程序

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

5.性能优化

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

JVM高频常问面试题解析

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

内容展示

JVM 内存区域划分内容

  1. 程序计数器(线程私有)
  2. Java栈(线程私有)
  3. 本地方法栈(线程私有)
  4. 堆(线程共享)
  5. 方法区(线程共享)
  6. 直接内存(线程共享)

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

二、JVM执行子系统内容

  1. Class类文件结构
  2. 字节码指令
  3. 类加载机制
  4. 类加载器
  5. Tomcat类加载机制
  6. 方法调用详解

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

三、垃圾回收器和内存分配策略内容

  1. Java中是值传递还是引用传递?
  2. 引用类型
  3. 基本垃圾回收算法
  4. 分代处理垃圾
  5. JAVA中垃圾回收GC的类型

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

四、编写高效优雅Java程序

  1. 面向对象
  2. 方法
  3. 通用程序设计

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

五、性能优化

  1. 常用的性能评价/测试指标
  2. 常用的性能优化手段
  3. 应用服务性能优化

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

JVM高频常问面试题解析

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

由于文章篇幅过长,小编整理成一套PDF文档的格式把JVM以及性能优化解析整理完成,文档获取方式:

需要获取得话麻烦一键三连之后看下图小助理的微信:(vip1024x)添加即可免费获取到哦

阿里Java研发第2面,都会问什么?斩获阿里P6+的“他”告诉你答案

 

本文由 @程序猿[Vip] 发布于 职涯宝 ,未经作者许可,禁止转载,欢迎您分享文章

发表评论

登录后才能评论
小程序
小程序
微信客服
微信客服
QQ客服 建站服务
分享本页
返回顶部