记一下自己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

https://blog.csdn.net/u013534071/article/details/80254548?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf

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://blog.csdn.net/thqtzq/article/details/90485663?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

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

https://mp.weixin.qq.com/s?__biz=MzA5MzI3NjE2MA==&mid=2650251787&idx=1&sn=51bfd0dc3b7e46c42c6ba453f325d19d&chksm=88635364bf14da7296977f0dec6e7378cd0122cd85ce5516f9ed7d2080991e4e33a9f7bab9a4&mpshare=1&scene=23&srcid=0910B6ROJdBjU8xG8S0iPnW9&sharer_sharetime=1599719550958&sharer_shareid=4050825525b9542520b9faa414042e22#rd

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://blog.csdn.net/yx0628/article/details/79086511?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

https://www.jianshu.com/p/bf7473e09432

48.okhttp

https://mp.weixin.qq.com/s?__biz=MzA5MzI3NjE2MA==&mid=2650247347&idx=1&sn=9fa8d58f44936e60ee09116de2302f8b&chksm=886361dcbf14e8ca3b78c76c556ff159a860e1af6ff2dd43bb5c45856ff61f220c7bcc8b6bd7&mpshare=1&scene=23&srcid=0917AbhsFZvZrWuTgdsu4b1b&sharer_sharetime=1600329370064&sharer_shareid=4050825525b9542520b9faa414042e22#rd

49.解决hash冲突的几办法

https://www.cnblogs.com/lyfstorm/p/11044468.html

50.ThreadLocal

https://blog.csdn.net/windrui/article/details/105132387?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

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

https://blog.csdn.net/bboyfeiyu/article/details/45869393?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf

58.平衡二叉树 旋转图解

https://blog.csdn.net/u014634338/article/details/42465089?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.add_param_isCf

LL : 直接进行右旋 RR:直接进行左旋 LR: 先左旋 再右旋 RL:先右旋 再左旋

59.onSavedInstanceState() 和 onRestoreInstanceState()

https://www.jianshu.com/p/27181e2e32d2

60.理解SSL中的 对称加密和非对称加密

https://blog.csdn.net/samxx8/article/details/41864609?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

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 访问权限修饰符

https://blog.csdn.net/u010876691/article/details/72724415?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

65.android OnTouchListener,onTouchEvent,onClickListener执行顺序

https://blog.csdn.net/xw13782513621/article/details/76648557?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf

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://blog.csdn.net/hrn1216/article/details/51465270?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

堆排序

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.字符串常量池 几个对象问题

https://blog.csdn.net/smile0198/article/details/22438551?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.channel_param

https://blog.csdn.net/wuzhiwei549/article/details/106004946?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

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())

https://blog.csdn.net/zhan107876/article/details/101556373?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.add_param_isCf (lsit 定制排序)

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

https://blog.csdn.net/xw13106209/article/details/6923556?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

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 的坑

https://blog.csdn.net/Mr_JingFu/article/details/79077613?utm_medium=distribute.pc_relevant.none-task-blog-title-2&spm=1001.2101.3001.4242

99.在Service中启动子线程和直接启动子线程的区别

https://blog.csdn.net/android_bar/article/details/53670368?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

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/k393393/article/details/78875838?utm_medium=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param&depth_1-utm_source=distribute.pc_relevant_t0.none-task-blog-BlogCommendFromMachineLearnPai2-1.channel_param

https://blog.csdn.net/u013823101/article/details/55259832

103.fragment 和 activity通信

https://www.jianshu.com/p/825eb1f98c19

104.taskAffinity 和 启动模式

https://jeanboy.blog.csdn.net/article/details/95445586?utm_medium=distribute.pc_relevant.none-task-blog-OPENSEARCH-2.channel_param&depth_1-utm_source=distribute.pc_relevant.none-task-blog-OPENSEARCH-2.channel_param

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

107.泛型

https://blog.csdn.net/u010772673/article/details/58049180

posted @ 2020-12-22 14:53  1215ccc  阅读(400)  评论(0)    收藏  举报