记一下自己Android秋招碰到的基本问题
1.Java的垃圾回收机制
https://www.cnblogs.com/jiangtunan/p/11025521.html
2.java的native方法
https://blog.csdn.net/flyingdog123/article/details/80419911
3.java内存解析
https://www.cnblogs.com/czwbig/p/11127124.html
4.java静态代理和动态代理
https://www.cnblogs.com/cC-Zhou/p/9525638.html·
https://www.cnblogs.com/maohuidong/p/7992894.html(new)
5.TCP拥塞控制和流量控制
https://www.cnblogs.com/aademeng/articles/11083448.html
https://blog.csdn.net/DJ_xiaoming/article/details/107317682
https://zhuanlan.zhihu.com/p/158183161 (全)
6.Http请求及相应报文
https://zhuanlan.zhihu.com/p/44938050
7.Http1.0、Http1.1区别
https://www.cnblogs.com/heluan/p/8620312.html
range头域: https://blog.csdn.net/happyq/article/details/8688353
8.对称加密和非对称加密
https://www.cnblogs.com/jfzhu/p/4020928.html
9.Https 通信过程
https://www.cnblogs.com/xishuai/p/https-ca.html
10.Android打包流程
http://mouxuejie.com/blog/2016-08-04/build-and-package-flow-introduction/
11.Gradle、Gradle Wrapper与Android Plugin for Gradle
https://zhuanlan.zhihu.com/p/32714369
12.从Android代码中来记忆23种设计模式
https://www.jianshu.com/p/1a9f571ad7c0
https://www.jianshu.com/p/61b67ca754a3(常用10种)
13.MVC、MVP、MVVM
https://www.jianshu.com/p/5e94569a430a
https://www.jianshu.com/p/3010760035e0
14.Binder通信原理与机制
https://zhuanlan.zhihu.com/p/87294775
https://blog.csdn.net/a740169405/article/details/94454223
https://www.jianshu.com/p/04a034cbbc27
15.对于应用更新这块是如何做的? (灰度,强制更新、分区域更新)
https://www.cnblogs.com/aademeng/articles/10890521.html(第19条)
16.Http状态码
https://www.cnblogs.com/sharesdk/p/9310004.html
17.git相关
https://www.cnblogs.com/shengguorui/p/11082790.html(用命令将本地项目上传到git)
https://www.jianshu.com/p/3d5d1e6c5ba2(git从当前分支创建新的分支并提交到远程端)
https://blog.csdn.net/qq_33210042/article/details/101025318(git将当前分支合并到主干)
https://www.cnblogs.com/ynxrsoft/p/7488904.html(git clone 下来的项目 切换分支)
18.Jvm、Dalvik和Art的区别
https://www.jianshu.com/p/59d98244fb52
https://www.cnblogs.com/jhcelue/p/7085094.html
19.Java的四种引用(强、软、弱、虚)
https://www.cnblogs.com/remember-forget/p/5971963.html
https://blog.csdn.net/c614507137/article/details/107792775
20.Handler内存泄露相关问题
https://blog.csdn.net/javazejian/article/details/50839443
21.HashMap如何形成环形链表
https://blog.csdn.net/jiangjunlanzhoulan/article/details/81239054
https://www.cnblogs.com/kxdblog/p/4323892.html ( hashmap 和 concurrenthashmap)
22.volatile
https://github.com/crossoverJie/JCSprout/blob/master/MD/Threadcore.md#可见性
https://www.cnblogs.com/zhengbin/p/5654805.html
https://www.cnblogs.com/yaoyunxiaoli/p/6605295.html(实现)
23.java内存模型 JMM
https://www.cnblogs.com/zhengbin/p/6407137.html
24.Hashtable 不允许空键
https://juejin.im/post/6844904023363960839
25.传统单例模式和双重检查锁的单例模式
https://www.cnblogs.com/a154627/p/10046147.html
https://blog.csdn.net/yuan_qh/article/details/99962482
https://blog.csdn.net/mnb65482/article/details/80458571 (全 包含各种单例模式的解释)
26.并发三大问题:原子性、有序性、可见性
https://www.cnblogs.com/boanxin/p/11706795.html
27.sychronized
https://blog.csdn.net/Do_hejun/article/details/88841067?utm_medium=distribute.pc_aggpage_search_result.none-task-blog-2allsobaiduend~default-5-88841067.nonecase&utm_term=sychornized%E5%AE%9E%E7%8E%B0%E5%8E%9F%E7%90%86
28.JVM、Dalvik、ART
https://www.cnblogs.com/qiaoyanlin/p/6743010.html
https://www.cnblogs.com/chyong168/p/3704974.html(dalvik)
29.activity、broadcast、service 超时时间
https://blog.csdn.net/oZhuiMeng123/article/details/88029653
30.Broadcast Receiver 相关
https://www.jianshu.com/p/0c29e30cce7d
31.Service 相关
https://www.jianshu.com/p/70018d02623a
32.String 为什么设置成不可变
https://blog.csdn.net/renfufei/article/details/16808775
33.handler
34.onNewIntent()
https://www.cnblogs.com/ythzxxq/p/9978229.html
https://www.pianshen.com/article/1268287835/
35.ThreadLocal
https://www.cnblogs.com/fsmly/p/11020641.html
36.okhttp同步和异步请求分析
https://www.jianshu.com/p/b2f7b4345d4b?tdsourcetag=s_pcqq_aiomsg
37.static、final、this、super
https://gitee.com/SnailClimb/JavaGuide/blob/master/docs/java/basic/final,static,this,super.md
38.hash优化
https://www.jianshu.com/p/9ee160b7c8fd
39.锁
https://www.cnblogs.com/jyroy/p/11365935.html
40.SharedPreferences
https://www.cnblogs.com/mzhou/p/3941008.html(非线程安全)
https://www.jianshu.com/p/c8d10357c939( apply 和 commit 区别)
41.Android系统架构
https://www.jianshu.com/p/a10ae8cc0028(新版 5层 加了硬件抽象层)
42.Intent 详解
https://www.cnblogs.com/libinsoft/p/5587320.html
43.活动生命周期 许多例子
https://blog.csdn.net/qq873044564/article/details/107371663
44.android:configChanges 属性总结
https://blog.csdn.net/qq_41405257/article/details/80917468
45.listview 和 recyclerview
https://www.cnblogs.com/chen-ying/p/12386712.html
46.类加载机制 和 双亲委派模型
https://blog.csdn.net/zhangjingao/article/details/86680206
47.sychronized 修饰普通方法 和 修饰静态方法
https://www.cnblogs.com/houzheng/p/8763478.html
https://blog.csdn.net/weixin_43849277/article/details/108358035
https://www.jianshu.com/p/bf7473e09432
48.okhttp
49.解决hash冲突的几办法
https://www.cnblogs.com/lyfstorm/p/11044468.html
50.ThreadLocal
51.Java线程占多大的内存
https://www.cnblogs.com/liuwhut/p/12704198.html
52.recyclerView 缓存
https://www.jianshu.com/p/efe81969f69d
53.内存优化
https://www.jianshu.com/p/516effe7649d
54.volatile底层实现原理
https://www.cnblogs.com/wildwolf0/p/11449506.html
55.serializable 和 parcelable
https://www.jianshu.com/p/9eae56085409
https://blog.csdn.net/yangsenhao211423/article/details/107435151
56.java值传递
https://blog.csdn.net/bntX2jSQfEHy7/article/details/83508006?utm_source=app
57.android 布局优化 include merge ViewSub
58.平衡二叉树 旋转图解
LL : 直接进行右旋 RR:直接进行左旋 LR: 先左旋 再右旋 RL:先右旋 再左旋
59.onSavedInstanceState() 和 onRestoreInstanceState()
https://www.jianshu.com/p/27181e2e32d2
60.理解SSL中的 对称加密和非对称加密
61.cookie和session
https://www.cnblogs.com/endlessdream/p/4699273.html
62.操作系统进程的调度算法
https://www.cnblogs.com/kxdblog/p/4798401.html
63.LFU和LRU
https://blog.csdn.net/a3192048/article/details/82291222
64.java 访问权限修饰符
65.android OnTouchListener,onTouchEvent,onClickListener执行顺序
66.Zygote线程
https://blog.csdn.net/fengluoye2012/article/details/80023051
67.B树 和 B+树
https://www.cnblogs.com/lianzhilei/p/11250589.html
https://blog.csdn.net/Fmuma/article/details/80287924(b+)
68.最小堆的构建
堆排序
https://www.cnblogs.com/chengxiao/p/6129630.html
69.LruCache 和 DiskLruCache
https://blog.csdn.net/qq_15893929/article/details/85229364
70.glide缓存机制
https://www.jianshu.com/p/17644406396b
71.字符串常量池 几个对象问题
72.Object类有哪些方法
https://blog.csdn.net/k678mh/article/details/8594769
73.类加载 clinit 与 init 方法
https://www.cnblogs.com/czwbig/p/11155555.html
74. compare to 方法
https://www.runoob.com/java/number-compareto.html(compare to)
https://www.cnblogs.com/twoheads/p/10287949.html (String.join())
75.reentrantlock
https://www.jianshu.com/p/dde297897eee (选择性通知 示例)
https://segmentfault.com/a/1190000014769953 (原理简单分析)
76.LayoutInflater 的 inflate 方法详解
https://blog.csdn.net/u012702547/articl5e/details/52628453
77.AysncTask
https://www.cnblogs.com/absfree/p/5357678.html
78.接口和抽象类的区别
https://blog.csdn.net/weixin_45302340/article/details/103946982
https://zhuanlan.zhihu.com/p/94770324
79.ArrayList扩容机制
https://github.com/Snailclimb/JavaGuide/blob/master/docs/java/collection/ArrayList-Grow.md
80.重写equals
https://www.cnblogs.com/fangtingfei/p/10503713.html
81.手动实现handler
https://blog.csdn.net/zhangke3016/article/details/75923323 (messagequeue)
82.匿名内部类访问外部方法中的变量 改变量为啥要用final修饰
https://www.runoob.com/w3cnote/inner-lambda-final.html
https://blog.csdn.net/tianjindong0804/article/details/817102689
83.canvas.save()和canvas.restore()的理解
https://www.jianshu.com/p/619618905432111
84.线程池中阻塞队列的选择
https://blog.csdn.net/qq_35909080/article/details/87002367
85.哈夫曼树构建
https://blog.csdn.net/dongfei2033/article/details/80657360
86.compileSdkVersion, minSdkVersion 和 targetSdkVersion
https://blog.csdn.net/gaolh89/article/details/79809034
87.Application中以标准模式启动Activity报错的原因分析
https://blog.csdn.net/haohengyuan/article/details/51898448
https://blog.csdn.net/milovetingting/article/details/104805197
88.LRUCache 原理
https://www.cnblogs.com/rwxwsblog/p/6093198.html
89.对 Java Integer.valueOf() 的一些了解
https://www.cnblogs.com/baxianhua/p/9335396.html
Integer修改缓存:https://blog.csdn.net/qq_36791569/article/details/80438292?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242
90.方法区
https://blog.csdn.net/wangbiao007/article/details/78545189
91.java中 基本数据类型 和 引用数据类型
https://www.cnblogs.com/maskwolf/p/9972982.html
92.flutter & 原生native
https://www.jianshu.com/p/1ba020283ec9
https://www.apkdv.com/flutter-versus-native-android-controls.html
93.APP启动另外一个APP
https://blog.csdn.net/sqj199567/article/details/88801780
94.android fragment 的 add 和 replace 方法
https://blog.csdn.net/gsw333/article/details/51858524
https://www.jianshu.com/p/11c8ced79193(看中间部分 各个函数调用导致声明周期的变化情况)
96.hashmap 的 put 和 get操作
https://www.cnblogs.com/kangkaii/p/8473793.html
97.android linearLayout 和 relativeLayout效率对比
https://blog.csdn.net/yang1349day/article/details/80359064
98.android 启动模式 singleInstance 的坑
99.在Service中启动子线程和直接启动子线程的区别
100.序列化相关概念
https://blog.csdn.net/xlgen157387/article/details/79840134
101.多线程中子线程抛出异常后,如何表现?
https://blog.csdn.net/uestcyms/article/details/84323121
https://blog.csdn.net/u011635492/article/details/80327082
102.Fragment already added
https://blog.csdn.net/u013823101/article/details/55259832
103.fragment 和 activity通信
https://www.jianshu.com/p/825eb1f98c19
104.taskAffinity 和 启动模式
https://www.cnblogs.com/yyz666/p/4674173.html
105.自定义view构造函数的参数详解
https://www.jianshu.com/p/a465ee6c392f
106.try catch finally 返回值的问题
https://www.cnblogs.com/pcheng/p/10968841.html

浙公网安备 33010602011771号