分为选择题、程序题、问答题三部分
选择题
一、大部分是算法,特别是排序,各种算法的时间复杂度、各种排序的原理是什么(分治)、给出二叉树中序、后序求先序的结果;
二、第二多的是看代码写结果,主要考察的对java的对象、初始化、类的理解,有一道是fruit是父类,派生了apple等类,Fruit fruit[] = new apple[5] 之后, fruit[0]还能不能指向orange;另一道是一个类里有private int i; 类的公有方法对 i进行++并catch错误finally。在主函数里生成对象并调用这个方法,问是会进行++呢,还是执行catch里的内容。
三、还考了android的基本知识,如anr是什么,下列什么不是adapter的函数,android-mainfest的属性;fragment的生命周期,调用顺序
四、此外还考了一点网络的知识,如交换机属于哪一层,
五、考数据库一题:下列哪个语句能应用到a、b索引,”select * from table where a>3 and b>3“”select * from table where a =1 order by b””select * from table where a>3 or b>3“。
考察重点是算法,考察比较全面。难度适中。
编程题
编程题与leetcode题目类似,有一道是给 bwbwb bbw这样的数组,让我们切开并翻转使得连续bwbw最长
问答题
问答题一 考AsyncTask任务在不同设备表现不同,问有什么不同,和如何达到同样效果?
问答题二 ANR问题出现有要看错误日志,但大多数设备不给权限访问,如何解决?