bilibili-java一面20210805
双非本科艰难求职,一直在问问题,我也一直在答,最后57分钟,说话都累死了。我才想起来,我没做笔试啊,咋直接面试?
- 自我介绍
- 为什么跳槽
- 学到什么新东西了(很尴尬,干的也是curd,但凡用中间件的都没接触到)
- 说一下Java的继承?没太懂,简单说了一下hashmap的继承过程
- 抽象类和接口有什么区别
- ==和equals区别
- string类,说说你的理解
- for循环里面string用+会发生什么?这个阿里巴巴开发手册里面写了,好久没看都忘了:https://www.cnblogs.com/wupeixuan/p/11729920.html
- 连着说了stringbuilder和stringbuffer
- 反射有了解过吗,介绍一下,反射效率为什么低(这个简单说了一下,回头学习一遍),什么是字节码
- JIT听过吗?没有
- 重载和重写的区别
- 线程池参数(展开输出原理)
- 线程池的线程数怎么设定的?根据cpu密集型还是io密集型区分。
- 集合里面哪些是线程安全的?(juc输出)
- 你刚才提到了死锁,那你创建一个死锁试试?
- jvm结构,你知道哪些垃圾收集器,市面上常用的是哪个?开始准备从serial从头说,他直接打断,那装B不让,只能直接说G1了。
- 年轻代老年代比例?1:2。大的是老年代。
- mysql优化的策略,索引底层,explain语句。从B+树开始分析,看了一下录音,这块我就说了五分钟。
- 覆盖索引听过吗?
- 分库分表有做过吗?有实际运用过吗?(这个可没用过,只能扯理念)
- redis指令?没用过指令,都是封装好的,这块他看我不知道就跳了。
- redis数据结构。分析底层sds,压缩链表,跳表。
- 一个加减乘除的计算机,你选择什么设计模式?工厂模式是解决什么问题的?
- 策略模式是什么,和工厂有什么区别?
- 还有什么你了解的设计模式?单例模式最简单的写法,你觉得怎么写?
- 知道atomicreference吗?不知道
- 两个很大的数做运算怎么办?没懂,我说大数相加的做法。事后想起来有biginteger,但这个原理我可没看过。
- 口述算法:怎么判断链表有环。
- 场景:有一个签到功能,怎么知道某个用户签到了七天,这个需求怎么做。在提示下不断迭代。
第一版,redis或者mysql,key是uid,value是{cnt,timestamp}
第二版,如果想要知道所有签到的日期怎么办。在value里面加一个list就行。
第三版,如果一年怎么办,会不会数据太大?用数组存,366长度的数组。
能不能再优化?366长度的字符串。
再优化?二进制表示。
我觉得我这波优化超神了,真的耗尽了。
- 两篇文章,你能判断出来有多少重复的吗?kmp?
- 那如果要求情节相似呢?不懂,这机器能做出来吗,这不是机器学习那类的
- 聊天,什么时候开始用B站的,冲了大会员吗?23333。
0818更新
收到了二面邀约,两周才处理完是真慢啊,我都觉得我凉了。
全部评论
(19) 回帖