2021年最新字节跳动Android面试真题解析

概述时间过得是真TM快,回想自己是16年从学校毕业,现在是出来工作的第五个年头啦。在不同的大小公司都待过,就在前段时间顺利的完成了一次跳槽涨薪,面试了几家公司,最终选择了字节跳动。今特此前来跟大家进行分享,希望对大家有所帮助。面试过程一面(40min):a. 线程池的底层原理b. 四种引用类型c. JAVA GCd. Sychornized关键字e. 静态同步函数f. 可不可以调用Abstrut 父类的super方法g. HTTP协议中POST,GET 的区别h. TCP/IP协议.
摘要由CSDN通过智能技术生成

概述

时间过得是真TM快,回想自己是16年从学校毕业,现在是出来工作的第五个年头啦。在不同的大小公司都待过,就在前段时间顺利的完成了一次跳槽涨薪,面试了几家公司,最终选择了字节跳动。今特此前来跟大家进行分享,希望对大家有所帮助。

面试过程

一面(40min):

  • a. 线程池的底层原理
  • b. 四种引用类型
  • c. JAVA GC
  • d. Sychornized关键字
  • e. 静态同步函数
  • f. 可不可以调用Abstrut 父类的super方法
  • g. HTTP协议中POST,GET 的区别
  • h. TCP/IP协议栈 i. TCP和UDP的区别
  • j. 三次握手是什么?可以两次握手么
  • k. 进程和线程的区别
  • l. 手写ViewGroup树结构遍历

第一次面试稍微有些紧张,但总体来说发挥还是OK的

二面(1h):

  • a. ArrayList / LinkedList的区别
  • b. HashMap的底层实现原理
  • c. 两个线程分别调用同一个类的实例函数和类函数
  • d. 什么是可见性?举例场景
  • e. volatile关键字的意义
  • f.Class对象
  • g. 线程结束的方法:Interrupt之后需要做什么
  • h. Android Activity切换生命周期
  • i. Activity保存状态的函数
  • j. 子线程对UI的操作方法
  • k. 如何在应用程序远程调用中表明用户身份
  • l. 单例模式、建造者模式、中介模式
  • m. 手写中位数查找算法

中规中矩,就是Activity回答的不是很好

三面(50min):

  • a. 聊聊项目
  • b. Handler和Looper的底层结构
  • c. postRunnable方法的底层实现
  • d. Thread Run和Start的底层调用区别(是否中断陷入)
  • e. BroadCast的使用方法
  • f. Intent的使用方法
  • g. Intent-Filter
  • h. 手写外部排序

上面就是我大致的一个面试过程,能记得的面试内容就这些了,其实面试中问道的还是有很多,问的都比较全面,主要都是从自己简历上填写的项目经历问过去的,顺着还延伸的问了一些。

面试过程其实大部分时候是,面试官或者公司是主导方,大部分的节奏是跟着面试官走,但是我觉得面试其实就是一个相互探讨的过程,不仅是公司在选择你,你也在选择公司、以后工作的同事和leader。

所以我这次面试中,更多的是和面试官探讨,也会反问面试官一些问题,不仅仅是最后面试官说可以问他几个问题,在面试过程中就会询问一些,优秀的面试官会跟你探讨,并且讨论出一个合理的方案或者正确的答案,整个过程非常愉悦,相互都学习到了。

这里概括一下给同伴们的几个小建议:

1、把自身的技能练扎实,
2、找跟你过往经历匹配度非常高的岗位,
3、面试的时候充分展现你个人的软实力硬实力。

关于内推的(同公司应该是hr伙伴的良心建议):

1、内推如果长时间没动静可能是简历没过。
2、投递一些部门没过,可以再投别的部门,甚至有可能会有别的部门看到简历,然后捞起来。

  • 9
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值