小红书Android一面 9.24
emmmm从笔试到一面过了一个月,收到邮件的一刻我是懵的
自我介绍
正常介绍,没有太详细的说项目
面试都是基本看着简历一条条问
Java篇
静态变量和实例变量的区别
这个问题刚开始属实愣住了,大概就是两个的生命周期不同。
- 静态变量有static关键字修饰
- 静态变量不属于某个实例对象,而是属于类,也叫类变量,只要程序加载了类的字节码,不用创建任何实例对象就会被分配空间,就可以被使用,也就是说,你创建了多个对象,他们共用了一个静态变量,而实例对象是属于自己的独有的,不会被共享!(可以Class.var使用),位于方法区
- 实例变量必须创建对象后,才可以通过这个对象来使用。即new Class().var,位于堆区
“==” & equals()
简单
浅拷贝 & 深拷贝
简单
HashMap , 扩容机制
多个线程如果共享多个资源,需要怎么保证安全
volatile,CAS/ABA
Android篇
事件的分发机制
Handler,能不能讲的更深入点
除了Looper和MessageQueue,还有这些之间是怎么运作的,我就没讲了,面试官问了我有没有更深入的地方。。属实是不会了..查一查,放下面。
- Android为什么要设计只能用handler机制更新UI呢。主要是为了解决多线程并发问题
- 每个线程只有一个Looper
计网
TCP UDP
永远记不全的命题😫