字节今日头条客户端一面面经(已挂)

这个是个我从今年3月份打出去的超长回旋镖,在我上一段实习快结束的时候HR来电话了,说给我捞起来了,但是问了问实习的时间,说是不适合。然后HR建议给我丢到秋招去,因为那天字节秋招正好开了,于是丢进去了。然后当天下午电话约面了。我是真没想到秋招第一个大厂面还不是主动投递的

全程高压拷打啊,真的压力大啊。面经根据印象整理,可能有遗漏的问题请谅解。

开篇自我介绍
Java部分
1、Java的内存结构有哪几种
2、Java的引用类型有哪些?具体的区别是什么?
3、在Java里面集合(指的是Collection & Map框架)有哪些?
4、ArrayList与LinkedList的区别?
5、HashMap底层的实现?存放一个数字进去以后,存放过程是什么?
6、Java中的有序性,可见性与原子性?可见性关键字?除了可见性volatile还保证了什么?
7、Java的Runnable与Callable的区别?
8、Java的线程池中,核心线程数与最大线程数是什么?核心线程数量是通过什么(底层)来实现线程的保活的?

计算机网络部分
1、常见HTTP相应代码极其含义?(通过开头第一个首数字判断?)
2、POST与GET的区别?除了幂等性以外,他们在数据传输上的区别?
3、输入一个浏览器网址,HTTP的请求过程?
4、UDP与TCP的区别?
5、TCP为什么三次握手?不能两次吗?
6、HTTPS与HTTP的区别?HTTPS什么时候用了非对称密钥加密,什么时候用对称密钥加密?

你常用过什么设计模式?什么是单例模式?

安卓/操作系统相关
1、进程与线程?常见的跨进程通信机制有哪些?
2、安卓的handler是什么?与Looper,MessageQueue的关系是什么?三者的作用是什么?
3、Looper是一个轮询,他是怎么避免卡死主线程的?
4、View/Window/WindowManager三者的关系?View渲染的流程?在渲染的时候WindowManager做了啥?
5、如何自定义View的高度?
6、View是怎么测量高度的?
7、安卓应用中,Activity的启动模式有哪些?四者的区别?
8、Activity生命周期有哪些?
9、点击图标以后,冷启动应用过程?从底层详细说一下?
10、触摸事件类型有哪些?Cancel这个类型中断可能会在什么情况下会触发?

手撕代码,不是算法题,是情景题

面废了感觉,等结果吧~

8.13更新 已挂
#牛客在线求职答疑中心##牛客创作赏金赛##秋招##字节##字节跳动##面经#
全部评论
不问实习项目的吗佬
点赞 回复 分享
发布于 2025-08-14 18:37 广东
佬你答的怎么样,后来过了吗,我也是今天接了个字节hr电话就给我安排上明天晚上的面试了,白天还得实习,啥也没准备,面得不好会不会影响后续秋招啊(hr说这个投递是他们主动寻访不占用秋招机会
点赞 回复 分享
发布于 2025-08-14 00:41 陕西
哇,看起来你经历了一场相当有挑战的面试呢!高压拷打确实挺累的,不过你已经很棒了,能回忆起这么多问题的细节!我有个小问题,你最喜欢的Java集合类是哪个呀?为什么? 对了,如果你想要更轻松地聊聊或者有任何求职上的疑问,可以点击我的头像给我发私信哦,我会一直在这里陪伴着你的! 面试虽然结束了,但是感觉你对自己的表现还有一些不确定。记住,每一次面试都是一次学习和成长的机会,不管结果如何,都是你宝贵的经验!加油,牛可乐相信你一定可以哒![拥抱]
点赞 回复 分享
发布于 2025-08-12 17:45 AI生成
兄弟,问一下你是java转客户端吗?
点赞 回复 分享
发布于 2025-11-14 21:23 安徽

相关推荐

2025-12-24 15:25
已编辑
门头沟学院 前端工程师
是腾讯的csig腾讯云,前天晚上九点突然打电话约面,激动的通宵学了一晚上,第二天状态很差改了今天(以后再也不通宵学习了)感觉自己浪费了面试官一个半小时单纯手写+场景,无八股无项目无算法,打击真的很大,全是在面试官提醒的情况下完成的,自己技术方面真的还是有待提高,实力匹配不上大厂和已经面试的两个公司完全不一样,很注重编码能力和解决问题的能力,然而我这两个方面都很薄弱,面试官人很好很耐心的等我写完题目,遇到瓶颈也会提醒我,写不出题也会很耐心的跟我讲解好感动,到最后面试结束还安慰我打算把下周最后一场面试面完之后就不面啦,如果能去实习还是很开心,但是最重要的还是好好努力提高技术以下是面经第一题// 实现一个解析 url 参数的函数function parseUrl(urlStr) {// TODO}parseUrl('*********************************************');// 返回 {a: 1, b: 2, c: 3}追问:在链接里见过什么部分?用 hash 路由的话放在哪第二题// 考虑有一个异步任务要执行,返回 Promise,这个任务可能会失败,请实现 retry 方法,返回新方法,可以在失败后自动重试指定的次数。/*** 异步任务重试* @param task 要执行的异步任务* @param times 需要重试的次数,默认为 3 次*/function retry(task, times = 3) {// TODO: 请实现}// ---------------测试示例 ----------------// 原方法const request = async (data) => {// 模拟失败if (Math.random() < 0.7) {throw new Error('request failed');}const res = await fetch('https://jsonplaceholder.typicode.com/posts', {method: 'POST',body: JSON.stringify(data),});return res.json();}// 新的方法const requestWithRetry = retry(request);// 使用async function run() {const res = await requestWithRetry({ body: 'content' });console.log(res);}run();第三题就是给 retry 函数添加类型注释,用到泛型第四题:在组件库中将 Alert 用 api 的形式实现(应该就是 message 这个组件)怎么渲染到一个浮层里而不是原地渲染出来
不知道怎么取名字_:技术这个东西,太杂了,而且要下功夫的
查看5道真题和解析
点赞 评论 收藏
分享
评论
7
37
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务