面试记录

2017-03-05  本文已影响0人  可不可以让我再睡一会儿

N久以来的第一次跳槽

2015毕业至今,已经在搜狐工作两年了,这段时间也终于下定决心跳槽了。现在的几个offer也在比较中,虽然都不是特别满意,但是好在也算成功脱坑了,以后找一个更加professional的团队去好好工作吧。

一些记录吧

这次主要是面Android 方向,确实很多东西记得不清楚,而且也被多家公司问到,留个记录吧,以后面试可以看看。

1.Android生命周期,被问到了A切换到B,各个的生命周期如何

2.Java 对象的初始化过程,以后复习的时候重新看看吧,坑还挺多的。

3.Binder机制,AIDL。好多人问到了。

http://blog.csdn.net/huachao1001/article/details/51504469 //这个写的更简单一点

http://blog.csdn.net/coding_glacier/article/details/7520199

为何binder只需要一次数据copy呢?

正常的IPC:source进程->copy -> 内核进程 -> copy -> 目标进程 (2次)

binder:  

    1.地址映射(内核进程和目标进程的内存使用同一块物理内存地址)

    2.source进程->copy -> 内核进程(因为目标进程的内存和内核进程内存物理地址一样,所以相当于目标进程的内存也有了这段数据)

4.Touch事件,这个答的还不错,问到的也多。

5.Java 值传递和引用传递。

6.属性动画吧,了解的比较浅。

7.View的绘制过程

http://blog.csdn.net/qinjuning/article/details/7110211/

8.Linearlayout 里的weight,说实话我特么现在也不会用。看下边这个吧。

http://blog.csdn.net/goodlixueyong/article/details/50004837

weight是指对父view中的额外空间(注意这个额外空间)按比例分配给每个view

尤其是matchParrent的时候,如果有多个matchParent的子view,额外空间是负数(父width-n*子width)

9.Handler的looper为什么不会阻塞主线程

10.通用的性能分析工具:overdraw,Traceview,Systrace,到时候能说出几个就行吧,这玩意也没啥问的。

http://blog.csdn.net/innost/article/details/9008691/

11.Launch Mode

12.SurfaceVIew 和 TextureView

13.RecyclerVIew

ItemDecoration:https://www.jianshu.com/p/b46a4ff7c10a

14.JVM, GC等(其实感觉问的也不深,能说出引用计数,根搜算法,Concurrent Mark Sweep(CMS),以及分代,堆栈,可能也就够了,当然,深入理解JAVA虚拟机那本书可以继续看)

15.可以关注的源码,说出来估计都是加分项吧:RxJava,EventBus, Fresco,OkHttp,ORM,ButterKnife等吧

16.mvc,mvp,mvvm

https://www.tianmaying.com/tutorial/AndroidMVC

上一篇下一篇

猜你喜欢

热点阅读