
java源码分析
文章平均质量分 77
NO Exception?
分享内容!
展开
-
HashTable源码解析
18 夜间模式原创 2020-05-13 20:32:08 · 305 阅读 · 0 评论 -
Volatile字段
Java内存模型规定,将所有的变量都存放在主内存中,当线程使用变量时,会把主内存里面的变量复制到自己的工作空间中,线程读写变量时操作的是自己工作内存中的变量。可以使用volatile来实现内存的可见性。使用synchronized太笨重,因为它会带来线程上下文的切换开销。volatile确保对一个变量的更新对其他线程马上可见。线程在写入变量时不会把值缓存到寄存器或者其他地方,而是直接刷新到主内存。不能保证操作的原子性。使用场景:1.写入变量值不依赖变量的当前值2.读写变量值没有加锁不能保证原子性原创 2021-07-19 19:31:18 · 164 阅读 · 0 评论 -
HashMap 源码分析
1.Hashmap特点Hashmap储存键值对形式的数据<K,V>,可以null键值,线程不安全,效率高。底层实现是数组和链表及红黑树的形式来保存数据。2.原理分析HashMap底层实现为Node数组,Node是HashMap的一个内部类,实现了Map.Entry接口,本质是一个映射(键值对)。 //链表对象 static class Node<K,V> implements Map.Entry<K,V> { final int hash;原创 2020-09-01 23:23:56 · 197 阅读 · 0 评论 -
并发集合了解哪些
事件分发类型相关方法ActivityViewGroupView事件分发dispatchTouchEvent√√√事件拦截onInterceptTouchEventX√X事件消费onTouchEvent√√√事件分发主要涉及三个方法:dispatchTouchEvent-事件分发;onInterceptTouchEvent ...原创 2019-10-28 17:29:54 · 242 阅读 · 0 评论 -
关于ClassLoader原理 类加载机制 双亲委派模型
1.依赖implementation 'cn.jzvd:jiaozivideoplayer:6.2.9'<cn.jzvd.JZVideoPlayerStandard android:id="@+id/videoplayer" android:layout_width="match_parent" android:layout_height="200dp" /&g...原创 2020-03-18 11:54:15 · 635 阅读 · 0 评论 -
ConcurrentHashMap 的实现原理
1. 增删改查的Sql语句建表:create table user(id Integer(11) primary key auto_increment,name varchar(20));增:insert into user(name,age,sex) values(?,?,?);删:delete from user where name=?;改:update user set age=2...原创 2020-03-31 08:05:58 · 6165 阅读 · 0 评论