前言
成为一名优秀的Android开发,需要一份完备的知识体系,在这里,让我们一起成长为自己所想的那样。
本文思维导图
一丶BAT相关面试点:
1.Binder通信原理和机制
2.多进程通信
3.组件化.插件化的区别以及如何选择
4.插件化的理解
5.热修复原理
6.对于AMS的认识
7.AOP 与OOP 有什么区别, AOP 的原理
8.QQ换肤原理以及大致思想
9.Android虚拟机
10.图片压缩的具体步骤和应用
11.反编译和加密如何进行
12.序列化和反序列化的原理
13.Handler的原理和认识
二丶算法合集笔记
1.Hash
2.最小生成树算法
3.最短路径算法
4.KMP算法
5.查找算法
6.排序算法
三丶线程.多线程.线程池和面试中的小问题
1.开启线程的方式
2.run()和 start()方法区别
3.如何控制某个方法允许并发访问线程的个数?
4.在 Java 中 wait 和 seelp 方法的不同
5.导致线程阻塞的原因
6.线程如何关闭的思路?
7.如何同步以及保证线程安全
8.减少APK包的大小
9.关于内存泄漏,内存抖动的优化以及解决方案
四丶小知识的清单
1.面向对象和面向对象的区别
2.Java和C++的区别
3.面向对象的特征
4.接口和抽象类的区别
五丶数据结构和设计模式
- 设计模式六大原则简要概述
- 设计模式的分类
3.HashMap 实现原理
六丶java核心小知识清单
1 .线程中 sleep 和 wait 区别
2.Thread 中的 start()和 run()的区别
3.Java 中重载和重写的区别
4.Tcp /IP三次握手,四次挥手
七丶性能优化
1.图片的三级缓存中,图片加载到内存中,如果内存快爆了,会发生什么?怎么处理?
2.WebView 的性能优化 ?
3.加载一张高清图片应该占用多少内存
4.内存泄露和内存溢出的区别 ?AS 有什么工具可以检测内存泄露
5.Bitmap 如何处理大图,如何预防 OOM?
6.性能优化,怎么保证应用启动不卡顿? 黑白屏怎么处理?
总结:
各行各样都会淘汰一些能力差的,不仅仅是IT这个行业,所以,不要被程序猿是吃青春饭等等这类话题所吓倒,也不要觉得,找到一份工作,就享受安逸的生活,你在安逸的同时,别人正在奋力的向前跑,这样与别人的差距也就会越来越遥远,加油,希望,我们每一个人,成为更好的自己。
-
点击此处,与我们一起交流学习
-
BAT大厂面试题、独家面试工具包,
-
资料免费领取,包括 数据结构、Kotlin、计算机网络、Framework源码、数据结构与算法、小程序、NDK、Flutter
lin、计算机网络、Framework源码、数据结构与算法、小程序、NDK、Flutter
[外链图片转存中…(img-6iP030w0-1622039333910)]