JinShuai's Blog

稳住别慌,问题不大


  • Home

  • Wiki

  • About

  • Archives19

  • Categories4

  • Tags8

  • Search

Java容器框架源码阅读笔记(三)Set

2018-07-22 | Java

java.util.Set框架: SetSet对Map进行了包裹,利用Map中key的唯一性保证集合中元素的唯一性,所有的key指向同一个对象。 HashSet直接用的HashMap,元素的顺序是不确定的,查找删除等操作的时间复杂度为O(1)。 // 所有key指向这个对象// Dummy valu ...

Read more »
Related Posts
  • Java容器框架源码阅读笔记(零)Collection、Map
  • Java容器框架源码阅读笔记(一)List
  • Java容器框架源码阅读笔记(二)Queue、Stack
  • Java容器框架源码阅读笔记(四)Map

Java容器框架源码阅读笔记(二)Queue、Stack

2018-07-21 | Java

java.util.Queue和java.util.Stack框架: Queuepublic interface Queue<E> extends Collection<E> 介绍 Queue是一个队列接口,继承自Collection。定义了关于FIFO队列的相关操作。 ...

Read more »
Related Posts
  • Java容器框架源码阅读笔记(零)Collection、Map
  • Java容器框架源码阅读笔记(一)List
  • Java容器框架源码阅读笔记(三)Set
  • Java容器框架源码阅读笔记(四)Map

Java容器框架源码阅读笔记(一)List

2018-07-20 | Java

java.uti.List框架: ArrayListpublic class ArrayList<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java ...

Read more »
Related Posts
  • Java容器框架源码阅读笔记(零)Collection、Map
  • Java容器框架源码阅读笔记(二)Queue、Stack
  • Java容器框架源码阅读笔记(三)Set
  • Java容器框架源码阅读笔记(四)Map

Java容器框架源码阅读笔记(零)Collection、Map

2018-07-19 | Java

Java容器中共有两个接口,分别是Collection和Map。Collection用于存放多个 “单个对象” ,而Map用于存放多个 “两个对象(键值对)” 。 Collectionjava.uti.Collection框架: 介绍Collection是存放单个对象的容器。 Collec ...

Read more »
Related Posts
  • Java容器框架源码阅读笔记(一)List
  • Java容器框架源码阅读笔记(二)Queue、Stack
  • Java容器框架源码阅读笔记(三)Set
  • Java容器框架源码阅读笔记(四)Map

synchronized底层实现

2018-07-10 | Java

预备知识 Java对象(非数组):用来存储锁,由对象头、实例数据、对齐填充数据组成。 对象头:由MarkWord、类型指针组成。32位JVM下的Markword占32位,存储的数据取决于锁的状态。 初始是无锁状态。 在运行期间MarkWord里存储的数据会随着锁状态的变化而变化 ...

Read more »
Related Posts
  • volatile底层实现
  • J.U.C源码阅读笔记(四)Lock
  • J.U.C源码阅读笔记(一)AQS
  • J.U.C源码阅读笔记(零)java.util.concurrent

ThreadLocal应用及原理

2018-07-05 | Java

ThreadLocal是一个用于创建线程局部变量的类。当前线程通过ThreadLocal的set()方法设置的变量只对当前线程可见,通过get()获取设置的变量。 使用 支持泛型 ThreadLocal<String> threadLocal = new ThreadLocal<& ...

Read more »
Related Posts
  • J.U.C源码阅读笔记(四)Lock
  • J.U.C源码阅读笔记(一)AQS
  • J.U.C源码阅读笔记(零)java.util.concurrent
  • J.U.C源码阅读笔记(五)线程池

代理

2018-06-26 | 设计模式

预备知识 反射:可以在运行期间分析某个类,每个类在JVM方法区都有一个Class对象,用来描述这个类的信息,比如这个类有什么属性,什么方法,修饰符等,通过Class对象可以创建对应类的实例,比如通过newInstance(); 代理 为某个对象提供一个代理,以控制对这个对象的访问,好比明星的经纪人 ...

Read more »
Related Posts
  • Java容器框架源码阅读笔记(零)Collection、Map
  • 设计模式学习笔记
  • Java容器框架源码阅读笔记(一)List
  • 缓存实现思路

volatile底层实现

2018-06-25 | Java

预备知识 可见性:当一个线程修改一个共享变量时,另外一个线程能读到这个修改的值。 重排序:如果在单线程下对于指令的重排不会影响逻辑,那么在可以提高运行效率的前提下会进行适当的指令重排。 缓存行:CPU中的缓存是分段的,一段对应一个存储空间,称为缓存行,缓存行是CPU缓存中可分配的最小存储单元。 CP ...

Read more »
Related Posts
  • synchronized底层实现
  • J.U.C源码阅读笔记(四)Lock
  • J.U.C源码阅读笔记(一)AQS
  • J.U.C源码阅读笔记(零)java.util.concurrent

停止一个线程

2018-06-22 | Java

预备知识 interrupt() Thread的非静态方法,标记当前线程的中断状态为true; isInterrupted() Thread的非静态方法,查看当前线程的中断状态; interrupted() Thread的静态方法,查看当前线程的中断状态,并清除(将状态改为false); 如果当前线 ...

Read more »
Related Posts
  • Java容器框架源码阅读笔记(零)Collection、Map
  • 设计模式学习笔记
  • Java容器框架源码阅读笔记(一)List
  • 缓存实现思路
12
Jin Shuai

Jin Shuai

万丈高楼平地起,勿在浮沙筑高塔
19 posts
4 categories
8 tags
RSS
GitHub E-Mail
Friends
  • RednaxelaFX
  • 酷壳
  • 廖雪峰的官方网站
© 2018 – 2023 Jin Shuai
Powered by Hexo v3.8.0
|
Theme – NexT.Gemini v7.1.1
|