记录一下技术面----JAVA
面试老哥很随和,比较平易近人,跟我也没隐瞒什么,让我反问都很坦诚的回答了我(不知道问啥就问加班了),下面是面试记录,根据回忆吧
1、安卓项目中用到的比较多的控件,然后展开问
2、安卓项目中图片怎么获取、上传的服务器的(我说用的云数据库提供商Bmob,老哥秒懂了就没接着问了),从数据库中获得了之后怎么显示(Glide库)
3、安卓项目中的自定义view写过没有
4、安卓图片中,有没有双击预览,可以放大的功能,怎么实现的
5、列表用的什么实现的
6、视频播放怎么实现的
7、多个图片怎么多线程加载的(项目中没用到,说不知道)
8、activity的生命周期
深层次的问题,我说没研究过,老哥说问一下
9、为什么要在配置文件里配置activity
我说不知道,老哥让我猜一下,我说配置文件里配置,然后根据配置文件来扫描相关的类代码
*******************************
后边还有很多围绕安卓的问题,记不太清楚了,然后后边的是java的
10、场景题:
(1)下载一个很大的文件,是用子线程下载的,怎么得到下载进度
我说的共享变量记录下载的文件大小,然后除以文件大小,实时反馈给主线程
(2)暂停怎么办
加flag,暂停了就wait
(3)怎么恢复下载
主线程notify
(4)怎么取消下载
加flag,取消了就直接终止
多线程这边一直是弱项,因为平常没有接触过,所以就智能想到这些了,老哥说方法还不错
11、Mysql问题:
(1)前人开发了一个系统,数据库表里存储了很多信息,都在一张表里,问我怎么找出重名的人存到另一张表里
我说分组后直接插入到另一张表里
(2)现在有需求,要在表里新增的时候,同时更新重名表里的数据
那时候想着插入的时候直接更新,老哥说最好别改变原来的接口,当时没想出来,结果是 触发器
*****************************
老哥口头说我这里没啥问题,应该算是过了,等hr姐姐的offer了
老哥跟我说很多是招的Java web,进去后都得转安卓系统开发,想投的人借鉴下吧。