首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
java:原理
订阅
二月_
更多收藏集
微信扫码分享
微信
新浪微博
QQ
12篇文章 · 0订阅
Java 基础(七)集合源码解析 Map
我们都知道 Map 是键值对关系的集合,并且键唯一,键一对一对应值。 关于 Map 的定义,大概就这些吧,API 文档的定义也是酱紫。 这里我们可以看到 Map 的泛型K,V也给 Map.Entry用了,然后根据定义,我们可以大胆的猜测这个 Entry 就是用来存放 K,V 等…
HashMap,ArrayMap,SparseArray源码分析及性能对比
图文并茂,通俗易懂。工欲善其事,必先利其器。
ReentrantLock与公平锁、非公平锁实现
最近开始读JDK源码,所有心得准备总结成一个专栏,JDK Analysis系列的第一篇,就从万众瞩目的ReentrantLock开始吧,而谈到ReentrantLock,就不得不说AQS,它是AbstractQueuedSynchronizer类的简称,Doug Lea上神在J…
JVM总结
域。这些区域都有各自的用途,以及创建和销毁的时间,有的区域随着虚拟机进程的启动而存在,有些区域则依赖用户线程的启动和结束而建立和销毁。Java虚拟机所管理的内存将会包括以下几个运行时数据区域,如下图 程序计数器:是一块较小的内存空间,它可以看作是当前线程所执行的字节码的行号指示…
通俗易懂,各常用线程池执行的-流程图
有时候花了大把时间去看一些东西却看不懂,是很 “ 蓝瘦 ” 的,花时间也是投资。 废话少说,我们开始。下图,皆可自行保存,常常阅之。日久,根深蒂固 corePoolSize,maximumPoolSize,workQueue之间关系。 当线程池中线程数小于corePoolSiz…
并发编程(3)线程同步的方式及死锁
线程本身由于创建和切换的开销,采用多线程不会提高程序的执行速度,反而会降低速度,但是对于频繁IO操作的程序,多线程可以有效的并发。 对于包含不同任务的程序,可以考虑每个任务使用一个线程。这样的程序在设计上相对于单线程做所有事的程序来说,更为清晰明了,如果是单纯的计算操作,多线程…
Java8新的异步编程方式 CompletableFuture(一)
一. Future JDK 5引入了Future模式。Future接口是Java多线程Future模式的实现,在java.util.concurrent包中,可以来进行异步计算。 Future模式是多线程设计常用的一种设计模式。Future模式可以理解成:我有一个任务,提交给了…
Java 基础(八)手撸 ArrayList、HashMap、TreeMap
本次一共选择了三个具有代表性的集合作为模仿对象,分别是 ArrayList、HashMap、TreeMap。至于为什么选择这三个集合,也是有原因的。因为ArrayList、HashMap 是我们最常用到的集合,然后 TreeMap 是因为比较难以理解且底层数据结构是链表(树应该…
Java多线程-完成Android开发中的某些需求
子线程中开启一个主线程去获取某些数据,此时子线程要处理等待状态,获取成功之后继续执行子线程中之后的代码. 当开启主线程去获取数据的时候,子线程的代码也会顺序去执行,这样并不能等到主线程有结果的时候再去执行子线程中的代码. 先来分析一下,当在线程A中开启另外一个线程B的时候,线程…
JAVA Class类文件结构
要想深入的了解jvm,了解java编译后的类文件结构和字节码是很有必要的。虽然这部分内容(主要是class文件的数据结构)比较枯燥,但是这也是最基础的内容,是我们深入理解jvm的内存、类的加载等内容的基石。 class文件是一组以8位字节为基础的二进制流,各个数据项目按照顺序排…