面试体验:
链家一面是一个超级超级漂亮的美眉有些像贾静雯。我一开始以为是hr,,,哈哈,后来上来第一个问题是问我进程间通讯机制,其实当时我脑子里想的是hr问的一些问题,有点脑子转不过来。二面是一个不是搞android的面试官,人挺好,问了些网络的事情,我的知识点都知道,但是一直没怎么能get到他的点子上…三面hr是一个男的,恩,第一次遇到男HR,聊得还好总体来说,链家面试流程和面试官都很nice
====================================================================
百度电话一面 34分钟
-
二叉树的非递归实现(前序、中序、后序)
-
给一个N_N的矩阵,找出2_2矩阵的和的最大值,时间复杂度?最优?
-
android蓝牙连接(传统蓝牙,BLE蓝牙),如何连接?
-
JVM内存分区(每部分异常会报什么错误?)
-
JVM垃圾回收算法(详细介绍)
-
JVM垃圾回收器(详细介绍)
-
https连接过程,握手过程
-
对称加密,非对称加密
-
三次握手过程
-
android消息机制
-
android事件分发机制
百度二面(一小时50分钟)
-
讲一下你做的这些项目里面哪个印象最深刻
-
你负责的这些部分讲几个你认为比较重要的点
-
Volley框架机制说下,你能抽取出(学到)几个技术点?
-
android性能优化说下
-
binder实现机制
-
AIDL文件的用处,aidl生成的类有什么用?讲下这个类做的事情和原理
-
进程之间是相互隔离的,那么从A进程到B进程使用binder进行通讯,那么猜想下到底是怎样做的呢?
-
View的消息机制你说下,对于ViewGroup和View有什么不一样?
-
事件拦截的话,可不可以从子View来进行操作?具体思路说下
-
考虑一种场景:listView加上一个header实现下拉刷新的功能,你要怎样去实现?说说思路
-
如果这样的场景下:listView和header属于不同的view,相互为兄弟View,外部套一个大的viewGroup,如何进行事件分发?从初始态到用户拉下出现header的过程来依次分析
-
如果是这样的场景:listView和header属于同一个view层,那么下拉刷新又该如何实现?事件拦截又该如何去做?
-
发过来一个网址,手写代码
根据他提的需求,写代码(主要就是设计模式的使用原则和设计模式的使用):基本上涉及的知识点:策略模式,工厂方法模式。之后根据不同的新需求如何尽可能少的修改原来代码来实现新功能。
-
对上一步中的抽象类和接口说下优缺点?
-
为什么java是要求是只能单一继承?却可以实现多个接口?说下你的见解
-
抽象类属性中什么场景下是优点?什么场景下优点又变成了缺点?
-
使用接口什么场景下是优点?什么场景下优点又变成了缺点?
权利翻转:你有什么需要问的么?…
百度三面(50分钟)
-
自我介绍
-
能不能立即过来实习?
-
网络分层?7层,5层,4层,具体说下每层干啥
-
ip是哪一层协议?
-
post与get的区别,get有长度限制么?
-
为什么要使用ip协议?直接使用mac地址连接不可以么?
-
全球这么多厂商,生产的设备如果有重复的mac地址,你如何解决这个问题?网络数据包传输会有什么问题
-
你是网络管理员,从英国的一台电脑要打开中国的一个网页,现在就是连接不上(dns正常可以解析到正确IP),你能考虑到哪些问题?
-
你是衡水的手机号,现在你在湖北,那么北京的手机号打你的手机为什么你可以接到电话?
接着问,你数据结构知道吧?
-
快排时间复杂度是多少?最差?平均?为什么时间复杂度是O(N*logN)?怎样推导出来的?
-
你对app推送有什么了解?如果是你来实现的话,你能怎么做?
-
中国有13亿人,对全国身份证号进行排序,你会怎样去做
-
你上级让你去安排一个日子来举办活动,要求