Java
文章平均质量分 64
解析Java底层源码
Polarisy丶
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Thread、Runnable、Callable、Future、FutureTask之间的关系
Thread 和 Runnable 是一个策略模式,FutureTask 和 Callable 又是一个策略模式,最后通过 Runnable 和 FutureTask 的继承关系,将这 2 个策略模式组合在一起。原创 2023-06-29 15:19:37 · 423 阅读 · 0 评论 -
一篇文章看懂多线程
多线程三种创建方式一丶继承Thread类(重点)二丶实现Runnable接口(重点)三丶实现Callable接口(了解)Thread自定义线程类继承Thread类重写run()方法,编写线程执行体创建线程对象,调用start(方法启动线程public class TestThread1 extends Thread {@Overridepublic void run...原创 2020-04-04 10:49:20 · 248 阅读 · 0 评论 -
深入理解注解和反射,这一篇就够了
注解和反射注解什么是注解Annotation是从JDK5.0开始引入的新技术Annotation的作用不是程序本身,可以对程序做出解释可以被其他程序读取Annotation的格式注解是以“@注释名”在代码中存在的,还可以添加一些参数值内置注解@Overside:此注解只适用于修辞方法,表示一个方法声明打算重写超类中的另一个方法声明@Deprecated:此...原创 2020-04-04 16:56:09 · 1110 阅读 · 0 评论 -
Vector源码解析
Vector源码解析Vector结构类图Vector成员属性//数组元素protected Object[] elementData;//数组元素个数protected int elementCount;//增长系数protected int capacityIncrement;//序列号private static final long serialVersionUID = -2767605614048989439L;Vector构造方法//指定数组初始容量大小和增长系数原创 2021-03-11 15:30:31 · 759 阅读 · 0 评论 -
LinkedList源码分析
LinkedList源码分析LinkedList结构图LinkedList内部是一个链表的实现,相比使用数组作为底层数据结构的ArrayList来说,会更加耗费空间。但也正因为这个特性,它删除,插入节点很快,它额外实现了双端队列接口Deque,这个接口主要是声明了队头,队尾的一系列方法。LinkedList属性成员//元素个数transient int size = 0;/** * Pointer to first node. * Invariant: (first == null原创 2021-03-09 23:37:01 · 179 阅读 · 0 评论 -
ArrayList源码分析
ArrayList源码分析ArrayList继承结构extends AbstractList :继承了AbstractList。为什么要先继承AbstractList,而让AbstractList先实现List?而不是让ArrayList直接实现List?这里是有一个思想,接口中全都是抽象的方法,而抽象类中可以有抽象方法,还可以有具体的实现方法,正是利用了这一点,让AbstractList实现接口中一些通用的方法,而具体的类, 如ArrayList就继承这个AbstractList类,拿到一些通原创 2021-03-08 22:54:58 · 126 阅读 · 0 评论 -
SpringBoot源码最全解析
SpringBoot源码自动配置原理SpringBoot的核心注解@SpringBootApplication@Target(ElementType.TYPE)@Retention(RetentionPolicy.RUNTIME)@Documented@Inherited@SpringBootConfiguration@EnableAutoConfiguration@ComponentScan(excludeFilters = { @Filter(type = FilterType.CUS原创 2021-02-27 23:42:01 · 1093 阅读 · 0 评论 -
HashMap底层源码透彻解析
HashMap源码解析HashMap简介HashMap在底层数据结构上采用了数组+链表+红黑树,通过散列映射来存储键值对数据因为在查询上使用散列码(通过键生成一个数字作为数组下标,这个数字就是hashcode)所以在查询上的访问速度比较快,HashMap最多允许一对键值对的Key为Null,允许多对键值对的value为Null。它的线程不是安全的,在排序上面是无序的。HashMap继承关系HashMap主要成员变量 //Node可以看做就是一个节点,多个Node节点构成链表,当链表原创 2020-07-26 00:48:45 · 290 阅读 · 0 评论
分享