自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(6)
  • 收藏
  • 关注

原创 springBoot使用webSocket中主动关闭程序抛出异常

webSocket在spring的环境中是通过aop增强,是一个多例的bean。主动调用关闭方法,实际是由代理类调用我们自己原先的onClose()方法,如果程序报错,关注自己的onClose方法即可。

2021-04-27 09:29:34 1206

原创 LinkedHashMap(JDK1.8)源码分析

1 LinkedHashMap添加源码LinkedHashMap继承HashMap,添加方法继承了父类LinkedHashMap只重写了newNode()方法,只需要关注newNode()方法怎么重写与HashMap比较,只多了一个linkNodeLast方法,关注linkNodeLast(entry)方法即可红黑树的重写这里使用双向链表将所有的Node节点串联,所以LinkedHashMap是有序的,添加代码大致如此。2获取元素源码 LinkedHa..

2021-02-03 22:02:09 91

原创 LinkedList源码分析

LinkedList为双向链表,实现List和Deque接口,非同步容器。适合顺序遍历以及增删多的场景,不适用于快查特定元素。1 LinkedList怎么实现双向链表、没错 这就是双向链表2 新增节点3 删除节点...

2021-02-01 22:40:45 87

原创 ArrayList的扩容机制和删除方法源码解析

ArrayList的扩容机制 private void ensureExplicitCapacity(int minCapacity) { modCount++; //某种操作后 容器容量大小大于阈值 扩容 if (minCapacity - elementData.length > 0) grow(minCapacity); } private void grow(int minCapacity) { ...

2021-01-27 16:16:39 169

原创 HashMap

1初始化变量默认初始化容量 2的幂次方static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16最大容量 int 32位 去除一位符号位 左移30位 即最大static final int MAXIMUM_CAPACITY = 1 << 30;现有容器已用数量与容器大小之比达到0.75,扩容static final float DEFAULT_LOAD_FACTOR = 0.75f;单个节点链表转化.

2021-01-26 22:05:48 58

原创 spring源码环境搭建

最近因为学习spring源码的原因,需要搭建spring源码环境,网上文章很多,但是写的不完整,另外Gradle的使用没讲清楚 导致我构建项目的时候花了很长时间,此篇文章希望可以帮到后面需要的人。1 先从github拉取spring源码2 下载后解压3 准备Gradle环境 验证过既可。网上大部分文章没有提及使用镜像,如果单纯使用项目默认,会出现下载失败或其他问题。下面我贴出Gradle全局配置。...

2021-01-25 11:12:37 121

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除