摘要:
synchronized 原理分析 1. synchronized 介绍 在并发程序中,这个关键字可能是出现频率最高的一个字段,他可以避免多线程中的安全问题,对代码进行同步。同步的方式其实就是隐式的加锁,加锁过程是有 jvm 帮我们完成的,再生成的字节码中会有体现,如果反编 阅读全文
摘要:
ConcurrentHashMap 源码分析 1. 前言 终于到这个类了,其实在前面很过很多次这个类,因为这个类代码量比较大,并且涉及到并发的问题,还有一点就是这个代码有些真的晦涩,不好懂。前前后后大概花了三天的时间看完的一些重要操作,接着今天来整理一下。 ! more 阅读全文
摘要:
LinkedHashMap 源码分析 1. 基本结构 1. 实现 实现的接口是 2. 继承 继承的是 这个就比较熟悉了,事实上我们会看到 代码量非常的少,主要就是因为他继承的 ,继承了大多数的操作。 仔细一点的都会发现 里面有非常多的空白方法,这些方法其实是模板方法,为了让 阅读全文
摘要:
HashMap 源码分析 1.结构 1. 继承 该类继承自 这个类似于 2. 实现 具体如下: 1. 首先这个类是一个 Map 自然有 Map 接口 3. 然后就是两个集合框架肯定会实现的两个接口 Cloneable, Serializable 。 3. 主要字段 1. 属性 阅读全文
摘要:
LinkedList 源码分析 1.结构 1. 继承 该类继承自 AbstractSequentialList 这个是由于他是一个顺序的列表,所以说继承的是一个顺序的 List 2. 实现 这个类实现的接口比较多,具体如下: 1. 首先这个类是一个 List 自然有 List 阅读全文
摘要:
ArrayList 源码分析 1. 结构 首先我们需要对 ArrayList 有一个大致的了解就从结构来看看吧. 1. 继承 该类继承自 AbstractList 这个比较好说 2. 实现 这个类实现的接口比较多,具体如下: 1. 首先这个类是一个 L 阅读全文
摘要:
计算机网络中比较中要的无非就是 TCP/IP 协议栈,以及应用层的 HTTP 和 HTTPS 。 前几天一直炒的的比较火的就是 HTTP/2.0 了,但是其实 HTTP/2.0 早在2015年的时候就已经出来了,并且这个版本是基于 Google 公司的 SPDY 协议发布的,其实说白了就是用的 SP 阅读全文
摘要:
package Classify.DP.Medium; import org.junit.jupiter.api.Test; public class PalindromicSubstrings { / 基本思路:这里的 dp 方程的每一个元素就代表我要以当前元素作为回文子串的结尾时候的回文子串的数 阅读全文
摘要:
package Classify.DP.Medium; import org.junit.jupiter.api.Test; / Initially on a notepad only one character 'A' is present. You can perform two operati 阅读全文
摘要:
1.HashMap 首先就是对 java 的 HashMap 进行了修改,以前是通过 hashCode 方法来判断他们的地址值是否一样 ,如果相同的话再使用 equals 方法比对他们的 equals 返回的结果是否一样,是则不存入否则的话就形成一个链表 直接挂在原有元素的后面。这个地方就有一个比较 阅读全文