-
2.15 DialogFragment 黑边
-
2.16 Handler原理,Android 消息机制
-
2.17 Android 系统架构
-
2.18 常用布局有哪些
-
2.19 Android数据存储有几种方式
-
2.20 View,SurfaceView
-
2.21 jni调用流程
-
2.22 组件之间相互引用 如何解决
-
2.23 自定义View 饼状图,点击事件,画文字
-
2.24 Android 数字签名
-
2.25 fragment用在哪里,与Activity的区别
-
2.26 RxJava原理
-
2.27 EventBus原理
-
2.28 View绘制原理
-
2.29 Retrofit和OkHttp原理,拦截器
-
2.30 点击事件传递机制,事件分为哪几种
-
2.31 anr如何产生,Service触发anr是多长时间(20秒),如何解决anr?如何解决那种莫名其妙的anr?
-
2.32 Dialog和Activity是同一个Window?
-
2.33 Window,Activity,Dectorview之间的关系
-
2.34 ConstraintLayout和RelativeLayout在绘制方面有何差别?
-
2.35 onClick事件和onTouchListener在哪里回调?
-
2.36 应用如何保活?
-
2.37 LinearLayout是如何测量(measure)的?如果有weight又是如何测量的?
-
2.38 屏幕适配
-
3. 其他
-
- 3. Java四种引用
-
3.1 项目中遇到的最困难的事情是什么?如何解决的?
-
3.2 Git基本操作
-
3.3 Kotlin优势
-
3.4 Kotlin 协程是什么?
-
3.5 二叉树,广度优先遍历,深度优先遍历
-
3.6 tcp,http,https,socket
-
3.7 敏捷开发
-
3.8 你经常使用哪些设计模式,常见设计模式的运用
-
3.9 3年之后工资怎么想的
-
3.10 你的优势
-
3.11 职业规划(3年后干啥,5年后干啥)
-
3.12 应用,进程,线程之间的区别
1.1 什么是乐观锁?
-
乐观锁:假设每次去拿数据都认为别人不会修改,所以不会上锁.但是在更新的时候会判断一下此期间别人有没有去更新这个数据. 一般用在读比较多,写比较少的情况.
-
悲观锁:假设每次都是最坏情况,每次去拿数据时别人都会修改,所以每次拿数据的时候都会上锁,这样别人想拿这个数据就会被阻塞直到它拿到锁. 多写少读时使用.
扩展资料: https://www.cnblogs.com/renhui/p/9755789.html
1.2 volatile关键字
-
保证可见性,不保证原子性
-
禁止指令重排序
-
不缓存,每次都是从主存中取
扩展资料: https://www.cnblogs.com/zhengbin/p/5654805.html
1.3 hashmap 原理,红黑树是什么?
-
1.7 数组+链表,链表过长时,会导致查询效率退化
-
1.8 数组+链表+红黑树,当链表长度大于8转为红黑树
-
HashMap 的默认初始大小为 16,初始化大小必须为 2 的幂,最大大小为 2 的 30 次方。数组中存储的链表节点 Entry 类实现于 Map.Entry 接口,它实现了对节点的通用操作。HashMap 的阈值默认为 “容量 * 0.75f”,当存储节点数量超过该值,则对 map 进行扩容处理。
-
线程不安全的容器,解决并发问题使用ConcurrentHashMap(高效)或者是Collections.synchronizedMap().Collections.synchronizedMap()其实就是每个方法加一个synchronize,其实和HashTable 差不多.
红黑树
-
平衡的二叉查找树
-
节点是红色或者是黑色
-
根节点是黑色
-
每个叶子的节点都是黑色的空节点(NULL)
-
每个红色节点的两个子节点都是黑色的
-
从任意节点到其每个叶子的所有路径都包含相同的黑色节点
-
插入时会涉及到变色和旋转
扩展资料: https://blog.youkuaiyun.com/justloveyou_/article/details/62893086
http://www.360doc.com/content/18/0904/19/25944647_783893127.shtml
1.4 jvm内存分配
Java虚拟机书中第二章
-
程序计数器
-
Java虚拟机栈
-
本地方法栈
-
Java堆
<