笔记
文章平均质量分 84
盯着我名字看干啥
这个作者很懒,什么都没留下…
展开
-
多线程笔记
多线程笔记1、创建多线程的两种方法(1)通过创建Thread的子类实现多线程创建多线程步骤:① 将一个类MyThread声明为Thread的子类。 这个子类应该重写Thread类的方法run() 。② 在run()方法中编写多线程想要执行的方法③ 创建MyThread的实例对象,使用实例对象的start()方法执行线程void start(): 导致此线程开始执行; Java虚拟机调用此线程的run方法。代码如下:package com.java.myThread;/** * @D原创 2021-08-01 20:44:57 · 118 阅读 · 0 评论 -
LinkedList源码解读
LinkedList源码解读本文基于jdk161、LinkedList底层结构(1)LinkedList底层维护了一个双向链表(2)LinkedList中维护了两个属性first和last分别指向首节点和尾节点transient Node<E> first;transient Node<E> last;(3)每一个节点都是一个Node对象,Node对象中又维护了prev、next、item三个属性,prev代表前一个节点,next代表后一个节点,item代表了具体的值原创 2021-07-18 17:19:13 · 124 阅读 · 0 评论 -
Vector扩容机制
Vector扩容机制本文基于jdk16的源码,其他版本思路相同,代码有所不同而已,若存在问题,请大佬指点。1、简单介绍①Vector类的定义说明public class Vector<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable②Vector类的底层存储数据使用的是一个Object类型的数组protect原创 2021-07-18 13:00:30 · 4393 阅读 · 0 评论 -
Java ArrayList扩容机制
java ArrayList扩容机制jdk161、无参构造2、有参构造本文基于jdk16,其他版本jdk思想是相同的,只不过调用的方法可能有所不同,本文如果存在问题,请求大佬给予指点。1、无参构造ArrayList使用无参构构造,第一次添加将ArrayList中存放数据的elementData容量扩容为10从上面断点处进入ArrayList的无参构造中//ArrayList的元素都被存储在elementData中 此处使用transient关键字代表该字段为瞬时态,无法序列化transie原创 2021-07-17 21:52:00 · 465 阅读 · 0 评论