兴业数金java开发一面

笔试:选择题做的好烦,编程题是从一串字符串中找出不想同的字串,用的滑动窗口,挺简单的

一面:由于最近在改论文,把一面时间推到了3月3号,晚上6:40开始面试,从实验室跑回宿舍

面试情型:3个面试官,由于我这边网络不好,他们等了大约4min,开一下摄像头后就关了,全程一个面试官面试

面试问题: 1、说下常用的数据容器

还以为问的数据结构,后来说下了主要就是collection、map接口下的几个,分别说了下那些是线程安全的、和不安全的

2、问了下currentHashMap

具体忘了,就说了下segment分段锁、CAS、以及扩容位与length-1实现到数组长度的映射、还有68红黑树

3、问了下CAS

回答了乐观锁、现场口述了下写了个CAS例子,接着问了ABA问题和解决方法(2,版本号、用过就丢)

4、问了下sychronized的锁升级过程

偏向锁忘了原理了,其他的轻量级锁->重量级锁举了形成的例子,就是重入锁state++和另一个线程来继续加锁

5、问了下volitale

回答了重排序和内存屏障,讲了下JMM和刷新到主存,并口述了需要结合CAS使用,保证B.CAS(pre,next)获取的为最新的值

6、线程池

参数,由于当时模仿手写过线程池、就直接说了,然后问了拒绝策略,自己说了下,第一个抛exception(阻塞队列满了)、放下当前线程去进行该线程,还有一个忘了,顺便提了下消息队列,看过别人搭建集群,也说了下mapreduce的过程

7、项目一些问题

用了缓存,当时就是用来保存用户角色避免频繁加载的,所以对于系统性能提升不大,然后问如何提升,我说大数据量需要redis集群,顺便讲了学习过一点spark,还有就是权限管理了,调表问我了解吗,不知道,但是用redis每深究,据问了下redis的数据结构,说了感觉数据结构都差不多,自己学过java和python的数据结构,也回答了redis的数据类型

8、问了happens-before

面试官发音好像不标准,后来说这个,来了句可见性,直接说了

9、问了下类加载机制

我说具体不记得了,不过写过博客,回答了一些过程和双亲委派模型及其优点

10、垃圾回收

问了虚拟机栈中的东西,我记不起来了,回答了几个,然后问了垃圾回收机制和内存分配包括分代,分代记不起来,只说了eden,说了下指针碰撞和空闲列表,讲了下c1回收算法,以前学及其学习的,类比了继承学习,不过是不同样的region同种算法计算最大收益

11、还有一些想不起来了,感觉就跳表不太了解,其他的都回答了下

最后说了上海和成都还有岗位,问了下意愿,最后还问了下有几个offer

感觉就这些了,其实java并发编程虽然没实践,不过学的没有忘记,其他的就没问了

其他面试官没说啥,也不知道过没过

全部评论
双亲委派模型:总结为了“坑爹高手、爱子情深”
点赞 回复 分享
发布于 2022-03-04 21:06
老哥投得哪?
点赞 回复 分享
发布于 2022-03-08 13:00
老哥后续怎么样了 我明天面
点赞 回复 分享
发布于 2022-03-09 17:30
我去年面的,懂得都懂
点赞 回复 分享
发布于 2022-03-18 10:43

相关推荐

字节 飞书绩效团队 (n+2) * 15 + 1k * 12 + 1w
点赞 评论 收藏
分享
贪食滴🐶:你说熟悉扣篮的底层原理,有过隔扣职业球员的实战经验吗
点赞 评论 收藏
分享
评论
8
16
分享
牛客网
牛客企业服务