摘要:
在以上代码中可以运行看出测试: hahsmap的多次运行结果不一样 concurrentHashmap结果一定是5000, hashtable也一定是5000, 阅读全文
摘要:
java中引用分为,强,弱,虚,软 (1)强引用 使用最普遍的引用。如果一个对象具有强引用,它绝对不会被gc回收。如果内存空间不足了,gc宁愿抛出OutOfMemoryError,也不是会回收具有强引用的对象。 (2)软引用 如果一个对象只具有软引用,则内存空间足够时不会回收它,但内存空间不够时就会 阅读全文
摘要:
WeakHashMap是一种弱引用map,内部的key会存储为弱引用, 当jvm gc的时候,如果这些key没有强引用存在的话,会被gc回收掉, 下一次当我们操作map的时候会把对应的Entry整个删除掉,基于这种特性,WeakHashMap特别适用于缓存处理。 (1)容量 容量为数组的长度,亦即桶 阅读全文
摘要:
CopyOnWriteArrayList是ArrayList的线程安全版本,内部也是通过数组实现, 每次对数组的修改都完全拷贝一份新的数组来修改,修改完了再替换掉老数组 ,这样保证了只阻塞写操作,不阻塞读操作,实现读写分离 从里面增删改查来看还是调用最底层的方法: 调用的是操作系统的方法: 只是在实 阅读全文
摘要:
ArrayList是一种以数组实现的List,与数组相比,它具有动态扩展的能力,因此也可称之为动态数组。 那么我们可以看看实现: 可以看出ArrayList实现了list,randomaccess,clonable接口, 其中 randomaccess,clonable接口,是没有响应的方法,只是一 阅读全文