Java
文章平均质量分 94
Java
不止会JS
这个作者很懒,什么都没留下…
展开
-
JAVA:创建线程,线程安全,线程锁,线程的生命周期,线程池
前两种书写简单,较好理解,都是通过实现run方法,再通过调用线程实力的start方法在新线程上执行run方法,不同的是第二种是实现的接口,而实现接口意味着它可以实现很多接口,并且继承其他类,有更好的扩展性(实际上也不常用),而第三种则比较复杂,传来传去,最终还要通过调用get方法获取线程的返回值,那他是怎么做到的呢?轻量级锁和重量级锁:当一个进程获取锁失败时,会重新获取,这个过程叫自旋,整个状态叫轻量级锁。同步方法用于同步整个方法,非静态方法的锁则是这个实例本身,而静态方法的锁则是这个类对象。原创 2024-07-25 00:24:08 · 590 阅读 · 0 评论 -
HashMap原理详解,HashMap源码解析
HashMap是一个数组链表和红黑树的结合体 HashMap的第一层表现是数组,HashMap默认创建一个长度为十六的数组来储存数据,但不同的是,它并非是先放在第0个索引,然后第一个索引那么放置,而是通过key获取对应的32位hash值,然后高十六位和低十六位进行异或操作,然后用结果的后四位和15的二进制(也就是1111)进行与操作,得到一个0-15之间的值来匹配索引位置。原创 2024-07-20 19:26:35 · 710 阅读 · 0 评论