[TOC] 线程池 1. 并发队列:阻塞队列和非阻塞队列 区别如下: 入队: 非阻塞队列:当队列中满了的时候,放入数据,数据丢失 阻塞队列:当队列满了的时候,进行等待,什么时...
ArrayList 源码分析 1. 数组介绍 数组是数据结构中很基本的结构,很多编程语言都内置数组。 在 Java 中当创建数组时会在内存中划分一块连续的内存,然后当有数据进...
[TOC] LinkedList 源码分析 1. 链表介绍 链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列...
Java 定时器 1. 概述 Timer 可以按计划执行重复的任务或者定时执行指定任务,这是因为 Timer 内部利用了一个后台线程 TimerThread 有计划地执行指定...
[TOC] Idea 使用 Junit4 进行单元测试 1. Junit4 依赖安装 Idea 默认使用 arquillian junit4 作为测试框架,我们将其更改为 J...
[TOC] Junit 学习笔记 1. 编写测试用例时需要注意 测试方法上必须使用 @Test 进行修饰 测试方法必须使用 public void 进行修饰,不能带任何参数 ...
目录 JUnit 是什么? IDEA 的 JUnit 配置 测试类的生成 测试覆盖率的查看 1. JUnit 是什么? JUnit 是一个 Java 语言的回归测试框架(...
生产者和消费者模型 1. 什么是生产者和消费者模型 生产者消费者模型具体来讲,就是在一个系统中,存在生产者和消费者两种角色,他们通过内存缓冲区进行通信,生产者生产消费者需要的...
等待和通知 API java.lang.Object 类提供了一套等待/通知的 API,它由 3 个 wait()、一个 notify() 和一个 notifyAll() 方...
某天我在****的时候,突然有个小伙伴微信和我说:“狼哥,求教为毛wait()要放在同步块中?” 我顿时觉得**一紧,仔细回顾一下,如果wait()方法不在同步块中,代码的确...
转载自 https://www.jianshu.com/p/19f9ce1d82a4 继承 Thread 类 run() 方法 VS start() 方法: run() 方法...
synchronized(修饰方法和代码块) 1. 含义 synchronized 是同步锁,用来实现互斥同步。 在 Java 中,关键字 synchronized 可以保证...
[TOC] volatile 关键字(修饰变量) 1. 含义 是一种比 sychronized 关键字更轻量级的同步机制,访问 volatile 变量时,不会执行加锁操作。 ...
[TOC] 并发三大特性 原子性、可见性、有序性 1. 原子性 含义 一个或多个操作,要么全部执行且在执行过程中不被任何因素打断,要么全部不执行。 在 Java 中,对基本数...
Thread 和 Runnable 1. 简介 Java 主要是通过 java.lang.Thread 类以及 java.lang.Runnable 接口实现线程机制的。 T...
附:更这个系列感觉自己像是又挖了一个坑🌚,不过趁自己刚好工作不太忙,有空闲期,静下心来研究学习源码也是一件很值得做的事,自己尽量会把这个坑填完😂。 [TOC] Java 集合...