07 2019 档案

摘要:概述 Java的内存模型(Java Memory Model )简称 JMM 。首先应该明白,Java内存模型是一个规范,主要规定了以下两点: 1. 规定了一个线程如何以及何时可以看到其他线程修改过后的共享变量的值,即线程之间共享变量的可见性。 2. 如何在需要的时候对共享变量进行同步。 JMM定义 阅读全文
posted @ 2019-07-30 14:24 乱敲代码 阅读(773) 评论(0) 推荐(0)
摘要:1.简介 继续分析源码,上一篇文章把HashMap的分析完毕。本文开始分析HashSet简单的介绍一下。 HashSet是一个无重复元素集合,内部使用HashMap实现,所以HashMap的特征耶继承了下来。存储的元素是无序的并且HashSet允许使用空的元素。 HashSet是非同步的。如果多个线 阅读全文
posted @ 2019-07-22 09:43 乱敲代码 阅读(429) 评论(0) 推荐(2)
摘要:上文讲到HashMap的增加方法,现在继续 "上文链接" HashMap在上一篇源码分析的文章中,如果使用put的时候如果元素数量超过threshold就会调用resize进行扩容 1.扩容机制 想要了解HashMap的扩容机制你要有这两个问题 1.什么时候才需要扩容 2.HashMap的扩容是什么 阅读全文
posted @ 2019-07-18 09:27 乱敲代码 阅读(1750) 评论(0) 推荐(0)
摘要:如果本文中有不正确的地方请指出由于没有留言可以在公众号添加我的好友共同讨论。 1.介绍 LinkedList 是线程不安全的,允许元素为null的双向链表。 2.继承结构 我们来看一下LinkedList的继承结构图: 代码实现: Cloneable实现克隆 Serializable序列化 List 阅读全文
posted @ 2019-07-12 11:24 乱敲代码 阅读(574) 评论(0) 推荐(0)
摘要:正文开始 注:JDK版本为1.8 HashMap1.8和1.8之前的源码差别很大 目录 简介 数据结构 类结构 属性 构造方法 增加 删除 修改 总结 1.HashMap简介 HashMap基于哈希表的Map接口实现,是以key value存储形式存在。(除了不同步和允许使用 null 之外,Has 阅读全文
posted @ 2019-07-11 15:00 乱敲代码 阅读(970) 评论(0) 推荐(1)
摘要:1.简介 建议阅读本文最好对Docker有一些了解 首先我们先了解一下Docker是什么 Docker 属于 Linux 容器的一种封装,提供简单易用的容器使用接口。它是目前最流行的 Linux 容器解决方案。 Docker 将应用程序与该程序的依赖,打包在一个文件里面。运行这个文件,就会生成一个虚 阅读全文
posted @ 2019-07-11 11:39 乱敲代码 阅读(14725) 评论(4) 推荐(1)