前言
先简单交代一下背景吧,本人毕业于某不知名985的本硕,17年毕业加入阿里,今年下半年跳槽到了头条,一直从事后端研发相关的工作。
之前没有实习经历,算是两年半的工作经验吧。这两年半之间完成了一次晋升,换了一家公司,有过开心满足的时光,也有过迷茫挣扎的日子,不过还算顺利地从一只职场小菜鸟转变为了一名资深划水员。
在这个过程中,总结出了一些还算实用的划水经验,有些是自己领悟到的,有些是跟别人交流学到的,在这里跟大家分享一下。
Java相关
1. HashMap 和HashTable 以及CurrentHashMap 的区别。
2. synchronized 和volatile 、ReentrantLock 、CAS 的区别。
3. JVM 类加载机制、垃圾回收算法对比、Java 虚拟机结构等。
4. Java 的四大引用
5. Java 的泛型,<? super T> 和 <? extends T> 的区别。
6. Java 线程有哪些状态,有哪些锁,各种锁的区别。
7. final 、finally、finalize 区别。
8. 接口和抽象类的区别。
9. sleep 、wait、yield 的区别,wait 的线程如何唤醒它?
10. java 中==和 equals 和 hashCode 的区别
11.String、StringBuffer、StringBuilder 区别
12.接口的意义
13.进程和线程的区别
14.讲一下常见编码方式?
15序列化 Serializable 和 Parcelable 的区别
16.string 转换成 integer 的方式及原理
17静态代理和动态代理的区别,什么场景使用?
18. 说说你对 Java 反射的理解
19. 说说你对 Java 注解的理解
20. 说一下泛型原理,并举例说明
计算机网络部分
1. TCP 与 UDP 的区别。
2. 三次握手、四次挥手。为啥是三次不是两次?
3. HTTPS 和 HTTP 的区别。HTTP 2.0,3.0?
4. 浏览器输入一个 URL,按下回车网络传输的流程?
5. TCP 建立连接后,发包频率是怎样的?
5. OKHttp
6.如何验证证书的合法性?
7.https中哪里用了对称加密,哪里用了非对称加密,对加密法(如RSA)等是否有了解?
8.client如何确定自己发送的消息被server收到?
9.谈谈你对WebSocket的理解
10.WebSocket与Socket的区别
11.谈谈你对安卓签名的理解
12.请解释安卓为啥要加签名机制?
最后
总而言之,Android开发行业变化太快,作为技术人员就要保持终生学习的态度,让学习力成为核心竞争力,所谓“活到老学到老”只有不断的学习,不断的提升自己,才能跟紧行业的步伐,才能不被时代所淘汰。
在这里我分享一份自己收录整理上述技术体系图相关的几十套腾讯、头条、阿里、美团等公司19年的面试题,把技术点整理成了视频和PDF(实际上比预期多花了不少精力),包含知识脉络 + 诸多细节,由于篇幅有限,这里以图片的形式给大家展示一部分。需要的朋友可以点这里免费领取
还有高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料 帮助大家学习提升进阶,也节省大家在网上搜索资料的时间来学习,也可以分享给身边好友一起学习。 领取地址: Android学习PDF+架构视频+最新面试文档+源码笔记
可以分享给身边好友一起学习。 领取地址: Android学习PDF+架构视频+最新面试文档+源码笔记