在今年的互联网就业形势下, 2023届的毕业生真的太不容易,前有考研缩招,后有校招内卷,很多企业甚至早在上半年就已经启动了2023届校园招聘,不过为时还不晚,哔哩哔哩大家可以考虑一下,作为去年的毕业生,在这里给大家分享一些经验,不管是校招还是社招,百变不离其宗,扎实基础+进阶知识+刷题巩固=成功入职。
在全身心准备校招或社招时,不管是从简历筛选到笔试,还是从一面二面等多轮面试,每一步我们都不能掉以轻心,尤其是面试环节,光会说还不够,必须要讲出气势来,毕竟面试的各个方面都是一种考察。我所面试的岗位是Android开发,在我进行面试时,遇到一个较为基础的题,但我卡住了,一下子想不起来,瞬间就心慌了,不过还好思考片刻后用自己的理解讲了出来,也算是没有掉链子,在这里提醒下大家,给自己点反应的时间,如果实在不会还是不要不懂装懂了,在其他题目上用亮点弥补回来。
不同的岗位的面试情况不一样,有的只需要两轮技术面,有的则需要三轮,不管怎样,技术面都是很重要的,下面和大家讲讲我所遇到的一些面试题目:
1、 自我介绍+项目提问
在这方面大家一定要提前准备好自我介绍的稿子,重点往自己的项目上靠,直截了当地展示自己的亮点,之后的技术内容也大多是围绕项目知识和岗位知识来展开,一定要提前做好准备。(当然也可以多说会,说不定就没啥时间问太多技术相关的,不过最好还是不要这样投机取巧,毕竟,技术是不可逾越的一道关卡,也是最能反映自己能力的地方,一定要把握好表现自己的机会)
2、 在项目过程中,你有出现过什么问题吗?
3、 线性池的主要流程和优势
4、 线程的状态以及常用的一些方法
5、 描述view事件的分发机制
6、 谈谈对深拷贝和浅拷贝的理解
7、 由于Handler导致的内存泄露问题,你会如何解决?
8、 解释一下HashMap的底层原理以及它的扩容方式
9、 JVM的垃圾清理机制
10、对安卓系统架构的认识
11、谈谈Android系统安装apk的过程?
12、简述Android点击事件的分发机制
13、你为什么会选择安卓开发方向呢?
最后一道算法题:判断一个整数数组中是否存在重复数字
大家可以看到,很多题目都是比较基础的,在书本和网络上都能找到对应的知识点,很多题目都是反复再问,这也体现了面试题的普适性,大家可以在全面把握的基础上有针对性地进行练习,为了方便大家阅读,我整理了与Android开发岗位相关的一些面试题,希望能帮助大家建立一点信心,弥补知识漏洞,在面试中呈现自己最好的状态。
模拟面试题:
一、Java
1、 Java synchronized中类锁和对象锁的区别在哪
2、 排序算法你知道哪些?
3、 Compose你有了解过吗?
4、 什么是反射机制?反射机制的应用场景有哪些?
5、 你对Java泛型中类型擦除的理解
6、 你对Java注解的理解?
7、 ArrayList和LinkedList的区别?
8、 java线程常见的几种锁?
9、 java线程常见的几种锁?
10、线程sleep()和wait()的区别?
11、Java中为什么会出现Atomic类?
12、JMM是什么?它存在哪些问题?
二、Android
1、说说Activity加载的流程?
2、说下切换横竖屏时Activity的生命周期?
3、试从源码角度分析 Handler 的 post 和 sendMessage 方法的区别和应用场景?
4、对于 Context,你了解多少?
5、子线程能否更新 UI?为什么?
6、谈谈自定义View的流程?
7、谈一谈插值器和估值器?
8、如何处理大图的加载?
9、谈谈布局优化的技巧?
10、Activity 与 Fragment 之间常见的几种通信方式?
11、ContentProvider是如何实现数据共享的?
三、算法和数据结构
1、为什么要用红黑树?
2、如何反转一个单链表?
3、谈谈你对时间复杂度和空间复杂度的理解?
4、二叉树的层次遍历
5、有一个链表,奇数位升序偶数位降序,如何将链表变成升序?
6、堆排序的原理是什么?
7、内存中的栈(stack)、堆(heap) 和静态区(static area) 的用法
8、heap和stack有什么区别
9、如何得到一个数据流中的中位数?
10、一组有序数(从小到大排列),有负有正,找出绝对值最小值
11、什么是快排算法
技术面是真正体现个人能力的地方,务必要学的扎实,俗话说:“打铁还需自身硬”,尤其是技术岗位,要尽可能把每一个知识小点弄懂,可以不熟练,但不能不会;其次要把自己真正会的内容写在简历上面,不熟的地方要多学多练,同时要尽可能与岗位匹配度上去考,这样面试才不会给自己留坑,才能赢得面试这场战役,因为面试官问题的来源基本都是你简历上个人能力和项目经验的体现;最后,一定要有解决问题的意识,在我们的学习和工作中总会遇到各种各样的问题,能否快速、沉着冷静的应对是一种能力,能否用专业知识解决问题也是一种能力,要善于总结可能会遇到的问题,并形成自己的方法论,这才是你与别人真正拉开差距的地方。希望大家都能进入自己心仪的大厂工作,都能在Android开发这条路上越走越远!
#Android##面试##社招##哔哩哔哩#