阿里健康 秋招 Java 一面(已过)
一面 9.12(30min)
电话面,八股比较少,开放性问题比较多。
- 无自我介绍,讲一个你简历上的项目
- 项目
- SpringMVC和SpringBoot区别
- SpringBoot自动装配
- Spring有很多的bean,启动慢,怎么优化
- 怎么知道一个bean的启动耗时
- bean的初始化过程哪一阶段比较耗时
- 动态代理有几种方式
- jdk代理,cglib区别
- 知道哪些字节码框架
- 有没有用ASM来做什么
- 打印日志,比如:变量a,值为1,
log.info("a={}", a)
,输出:a=1
,在日志的底层方法中,我们怎么获得入参的变量名?- 这里我说用反射来实现,面试官问我能用ASM来实现吗?我说不会(别急,有反转)。
- 当别人调你的方法,你这个方法怎么知道是哪个地方调用的
- JVM类加载过程
- 同事想和你用一个jar包,你用的是1.0版本,他用的是2.0版本,冲突怎么解决?
- JVM内存结构
- 哪些是线程私有的,哪些是共享的
- 虚拟机栈包含了哪些信息
- 说到了局部变量表,
- 面试官:那现在就知道怎么打印方法入参的局部变量名了吧?
- 然后面试官就回到之前那个打印日志的问题,拿到调用线程的栈帧信息,我们就知道当前调用的是哪个类,哪个方法,第几行,我们就可以通过ASM字节码解析工具来拿到局部变量表的信息,就可以拿到传递参数的变量名。
- 全串起来了,太强了。orz orz
- 平时怎么提升自己的技术,知识广度,通过什么渠道学习新技术
- 然后看了一下我的博客,说写的挺多的,都是自己写的吗?面试官说挺好的。
#阿里##阿里健康##秋招##校招##面试#面试官很有深度,一步步由浅入深,最nb的是还能拿当前问到的知识点来解决前面的问题,太强了。收获很多。
面完就说给我往上推进流程,之后发了测评。第二天做了测评。
但至今为止流程一直在待安排面试,没有推进了。