摘要: <<:左移 左边最高位丢弃,右边补齐0>>:右移 最高位是0,左边补齐0;最高为是1,左边补齐1>>>:无符号右移 无论最高位是0还是1,左边补齐0 很难记,记不住怎么办呢。 20,左移一位,变成200,是不是乘以10了。 20,右移一位,变成2,是不是除以10了。 这么一来是不是容易记了。 今天又 阅读全文
posted @ 2021-03-08 20:42 cfdroid 阅读(76) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal,这个东西到底是干嘛的,很多文章都有介绍,一般是先介绍一下这个类,然后再把它的set方法,和get方法说一遍。 但是说完了,你懂了吗,你知道这玩意儿是干什么用的了吗,好像还是迷迷糊糊的。 那么我今天也来说一说,那么切入点是什么,Handler消息机制。 是个人都知道Handle 阅读全文
posted @ 2021-03-07 13:47 cfdroid 阅读(44) 评论(0) 推荐(0) 编辑
摘要: 这篇文章主要是说我对framework层的一些看法,没有代码,什么都没有,主要谈一谈怎么去看framework? 简单总结一下: 可以从AMS启动的角度去分析AMS 可以从四大组件管理的角度去分析AMS 可以从ANR实现机制的角度去分析AMS 可以从内存管理的角度去分析AMS 可以从窗口加载的角度去 阅读全文
posted @ 2021-03-06 20:55 cfdroid 阅读(86) 评论(0) 推荐(1) 编辑
摘要: 双重锁单例模式,代码如下(代码是从我的好同事这里直接拷贝的) public class Singleton { private volatile static Singleton instance; private Singleton () { } public static Singleton g 阅读全文
posted @ 2021-02-07 19:34 cfdroid 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 一个东西你自己知道,跟你能说出来是两回事。 不但能说出来还要让别人能够听明白又是一件难事。 所以要自己写一遍看看到底问题出在哪里,能不能把这个问题说明白。 遣词造句见功底 JMM java虚拟机内存模型 虚拟机内存模型讲到了如下几点: 1.硬件与缓存一致性协议 2.工作内存与主内存 3.内存间的交互 阅读全文
posted @ 2021-02-03 14:59 cfdroid 阅读(64) 评论(0) 推荐(0) 编辑
摘要: 最近又看了一遍《深入理解java虚拟机》里面讲到Java内存模型时提到了volatile关键字。 volatile关键字两个特性: 1是内存可见性 2是禁止指令重排序优化 禁止指令重排序优化的原理提到了内存屏障,内存屏障实现是基于lock前缀,lock前缀的作用是将 本处理器的缓存写入了内存,该写入 阅读全文
posted @ 2021-02-01 15:49 cfdroid 阅读(338) 评论(0) 推荐(0) 编辑