2025.12.1 广州某小厂日常实习一面已oc
第一次面试,线下,不过感觉还好吧,也不紧张
。
20min笔试:
1. exception和error的区别
2. Thread.sleep(0)的意义以及其他相同作用的方案
3. 列出熟悉的设计模式,解释一下并给出应用场景
4. uuid转base64编码后是多少位,请给出计算过程(怎么还会有这种题
)
5. 项目中如何创建线程池,Exceutor的缺陷
6. shutdown()的作用,是否会抛弃已提交未执行的任务
7. 对spring IOC的理解
8. beanFactory和applicationContext的区别
9. 算法手撕,不是力扣上的题目,但还好算是比较简单的查找,我用了个嵌套二分,感觉不是最佳实现……
现在只记得上面这些题,还有几题记不起来了
我一开始没想到还会有笔试和算法,说是笔试通过后才会有面试……
不过还好算是比较简单,但是uuid那题没写出来……
面试:
1. switch比对string的代码是什么样的,如果string是null该怎么办
我说如果是null我会在switch之前进行if判断,因为switch不能用null会抛异常,hr说可以(不过我后来网上查了还是不行)
2. 手撕sql:有user和phone两张表,需要查询phone表中有两条及以上记录的user
平时mp用惯了没怎么写过sql了,写了个子查询hr说不是最佳方案
3. 现在有abc三个任务,c需要在a和b完成后才能开始执行,请给出三个任务执行时间最短的方案
a和b提交到线程池并行处理
4. future的返回实体是什么
我说是封装泛型的future,hr说是future的子类(?)
5. 线程池中除了future和completefuture外,还有什么方法可以监控任务是否完成
countDownLatch和cyclicBarrier
6. 异步为什么要选择mq,直接开个线程不行吗
我说mq有重试机制,而且可监控,整体稳定性和健壮性比较强
7. 遇到解决不了的问题会干些什么
我说上网查,问ai,hr说为什么不问同学(?)
8. 如果有一个接口上线有bug,如何快速排查到接口内部存在问题的代码
我说首先直接看看bug是什么,如果根据bug情况无法判定的话会进行debug打断点慢慢排查。但是hr好像是想让我回答git,说直接看当前版本与上个版本该接口的差异就好了
9. 你了解过git的历史吗(?)
🈚
10. 如何实现每月签到
我说redis的位图,hr说为啥要用redis,我说可以减轻数据库压力同时保障快速响应。hr说直接存本地缓存不就好了,我说每个用户都要维护一个位图,存本地不会oom么,hr没回答
11. 不用redis如何实现每月签到
我说那就只能存mysql里面了,加个限流,然后sql表里是userId和位图字符串
12. 字符串和二进制的bit位差距
我说只知道字符串比二进制要大……
hr说不应该将位图用字符串的形式存储,占用空间太大,应该用int
然后就是关于项目的问题以及反问了
最后直接给了oc,但是我打算等年后再实习就说考虑一下了。
第一次面试,整体体验跟想象中的差距还是蛮大的,不过hr其实人挺好的,感觉像老前辈,说让我思维保持灵活,不要老看网课要去多读一下电子书。然后说我们做程序员的,要多去思考当前技术栈解决不了的问题,而不是总想着利用现有的技术栈去解决问题。最后还劝我可以不着急现在找实习,现在机会少,可以等3月的实习,说我的简历可以多投一下中大厂,真是老前辈了

不过准备了很久的jvm、计网os以及其他的倒是完全没问到
#实习# #面经#
20min笔试:
1. exception和error的区别
2. Thread.sleep(0)的意义以及其他相同作用的方案
3. 列出熟悉的设计模式,解释一下并给出应用场景
4. uuid转base64编码后是多少位,请给出计算过程(怎么还会有这种题
5. 项目中如何创建线程池,Exceutor的缺陷
6. shutdown()的作用,是否会抛弃已提交未执行的任务
7. 对spring IOC的理解
8. beanFactory和applicationContext的区别
9. 算法手撕,不是力扣上的题目,但还好算是比较简单的查找,我用了个嵌套二分,感觉不是最佳实现……
现在只记得上面这些题,还有几题记不起来了
我一开始没想到还会有笔试和算法,说是笔试通过后才会有面试……
不过还好算是比较简单,但是uuid那题没写出来……
面试:
1. switch比对string的代码是什么样的,如果string是null该怎么办
我说如果是null我会在switch之前进行if判断,因为switch不能用null会抛异常,hr说可以(不过我后来网上查了还是不行)
2. 手撕sql:有user和phone两张表,需要查询phone表中有两条及以上记录的user
平时mp用惯了没怎么写过sql了,写了个子查询hr说不是最佳方案
3. 现在有abc三个任务,c需要在a和b完成后才能开始执行,请给出三个任务执行时间最短的方案
a和b提交到线程池并行处理
4. future的返回实体是什么
我说是封装泛型的future,hr说是future的子类(?)
5. 线程池中除了future和completefuture外,还有什么方法可以监控任务是否完成
countDownLatch和cyclicBarrier
6. 异步为什么要选择mq,直接开个线程不行吗
我说mq有重试机制,而且可监控,整体稳定性和健壮性比较强
7. 遇到解决不了的问题会干些什么
我说上网查,问ai,hr说为什么不问同学(?)
8. 如果有一个接口上线有bug,如何快速排查到接口内部存在问题的代码
我说首先直接看看bug是什么,如果根据bug情况无法判定的话会进行debug打断点慢慢排查。但是hr好像是想让我回答git,说直接看当前版本与上个版本该接口的差异就好了
9. 你了解过git的历史吗(?)
🈚
10. 如何实现每月签到
我说redis的位图,hr说为啥要用redis,我说可以减轻数据库压力同时保障快速响应。hr说直接存本地缓存不就好了,我说每个用户都要维护一个位图,存本地不会oom么,hr没回答
11. 不用redis如何实现每月签到
我说那就只能存mysql里面了,加个限流,然后sql表里是userId和位图字符串
12. 字符串和二进制的bit位差距
我说只知道字符串比二进制要大……
hr说不应该将位图用字符串的形式存储,占用空间太大,应该用int
然后就是关于项目的问题以及反问了
最后直接给了oc,但是我打算等年后再实习就说考虑一下了。
第一次面试,整体体验跟想象中的差距还是蛮大的,不过hr其实人挺好的,感觉像老前辈,说让我思维保持灵活,不要老看网课要去多读一下电子书。然后说我们做程序员的,要多去思考当前技术栈解决不了的问题,而不是总想着利用现有的技术栈去解决问题。最后还劝我可以不着急现在找实习,现在机会少,可以等3月的实习,说我的简历可以多投一下中大厂,真是老前辈了
不过准备了很久的jvm、计网os以及其他的倒是完全没问到
#实习# #面经#
全部评论
相关推荐
11-29 18:38
河北东方学院 前端工程师 点赞 评论 收藏
分享
查看29道真题和解析