字节抖音Android客户端一面凉经
- 自我介绍
- 项目介绍
- 什么是服务?
- 前台服务和后台服务的差别?
- 要让服务持续运行需要在启动服务时进行什么配置?如应用在运行时由于调度意外终止,如何恢复?
- 启动服务的方式,有两种
- 服务常见的生命周期
- 安卓应用的优先级,系统怎么判定?
- 活动的生命周期
- 如何决定哪些逻辑放在onCreate(),哪些放在onStart()?onResume()又有什么作用吗?
- 常见的安卓布局
- 我们在自定义view需要关注哪些方面,或者是如何自定义控件?
- 如何自定义进度条
- 安卓handler运行机制
- handler内存泄漏详解,什么是内存泄漏?handler为什么会造成内存泄漏?如何解决内存泄漏?
- 强引用,软引用,弱引用,虚引用
- handler对Activity是哪种引用类型,handler如何通过这种引用去引用Activity
- 内部类的类型,静态和非静态
- 进程线程是什么
- 多进程多线程的优势和劣势
- 多进程相比多线程的优势,如在使用并发编程时
- 单核设备的多线程是否需要考虑线程安全以及加锁?
- 死锁四个基本特征
- synchronize(Obeject o)与synchronize放在函数签名里的区别是什么,一个是显式锁一个是隐式锁
- java其他的锁有了解吗?读写锁
- 介绍一下读写锁
- 读写锁与synchronize锁相比有什么优势?
- 双重检测锁
- volatile作用:保证可见性和防止指令重排
- 什么是可见性?什么是指令重排?
- 双重检测锁两个判空都是必要的吗?取出外面那个会怎样?
- java内部的锁升级机制
- 其他设计模式有听说过吗?
- 工厂模式是怎样的呢?
- tcp udp区别
- tcp如何保证可靠连接,拥塞控制具体是怎样的
算法:重排链表 https://leetcode-cn.com/problems/reorder-list/
反问:有什么改进意见吗?
感觉问问题不会停留在表面,会深入去问看你有没有对这个知识有充分的认识,还需要对自己的项目以及相关技术有比较深入的了解。
#字节跳动客户端研发实习面经##春招##实习##面经##Android##校招##Java#