一二面的面试官都挺好的,忘记录音了,记录了一些还记得的问题。
一面、
1. 自我介绍
做题,说还没看完简历
1 . 二叉树的深度
2. 验证平衡二叉树
2. 三次握手,为什么三次
3.TCP、UDP。区别和应用场景
4.Https、中间人攻击,怎么防范
5.java泛型、泛型擦除、编译成字节码文件以后指定类型是否还保留
6.线程池的种类
7.线程池的原理
8. 代码题:实现三个线程交替打印ABC(这里我用的volitail,面试官说如果打印是一个很耗时的操作,那程序就会空转。。。)
9. 然后就问了一些改进的方法
二面、
1. 自我介绍
2.问了一些科研相关的问题
3.final关键字,拓展了一些相关的,记不清了
4.类加载的过程
5.static关键字、static为什么不能用于外部类?
6.JVM内存模型,常量放在哪,字符串放在哪?给了几个字符串问想不想等
7.int和Integer的区别
8.封装继承多态
。。。。记不太清了,都是一些比较基础的问题,太久没看了,答得不是很好
做题:
实现一个带超时时间的LRUCache
先写了一个LRU,然后又让实现了超时的逻辑,最后让加上了get和set线程安全的处理
刚拿到题目人是麻的,说好的考算法的呢。还是慢慢写出来,虽然不一定对
然后面试官按照我写的代码问了一些多线程的问题。
二面面了两个小时,面完脑袋都是糊的,希望能过
#抖音客户端##Android开发实习#