
java源码
文章平均质量分 96
梧桐和风
学如逆水行舟,不进则退。要知道,比你聪明的人比你还努力。
展开
-
一文深入分析AQS(原理篇)
之前写过AQS的文章 AbstractQueuedSynchronizer整体解析),当时只是简单介绍了下,没有涉及源码分析和实现细节,但这毕竟是java同步中最重要的类,于是重写了部分内容,添加了源码分析和其他细节。 本文分成两个部分,第一部分从整体上分析AQS的实现机制和原理,第二部分深入源码探究。好了,那就开始吧 整体介绍 从AQS类的注释中,我们可以了解到:该类是一个用于构建锁或其他同步器的基础框架,使用一个int的成员变量表示同步状态。另外,还有一个内置的先进先出的队列可储存竞争同步状态时排队的线原创 2021-06-09 14:44:35 · 970 阅读 · 0 评论 -
java方法覆盖的一点研究
java方法覆盖的一点研究对于方法覆盖,本来我的理解是:子类覆盖父类的方法,当子类的方法签名与父类一致时,就算覆盖了父类的方法。然而在研究String相关类源码是发现了这样的代码:原创 2016-10-13 22:35:15 · 593 阅读 · 0 评论 -
java学习笔记-String源码分析(2)
本文主要深入分析了java String类相应方法的源码及用法。原创 2016-11-19 15:12:28 · 1706 阅读 · 0 评论 -
java8 HashMap解析
java8 HashMap解析HashMap是java中常用且相对重要的类之一。了解此类的数据结构及储存原理对我们写程序有莫大帮助。java8中又对此类底层实现进行了优化,比如引入了红黑树的结构以解决哈希碰撞。今天我们就从底层解析一下HashMap,希望对大家有所帮助。HashMap的数据结构1. HashMap整体结构Map是java中的储存键(key)、值(value)对数据结构。而HashMa原创 2017-02-09 08:33:23 · 1001 阅读 · 0 评论 -
Objetcs类解析
自java7开始,java.util包添加了一个对Object的常用方法操作类,即Objects工具类。主要为提供空指针安全的equals、hash、toString等的相应方法。其类方法概要如下: //判断两对象是否相等 public static boolean equals(Object a, Object b); //深度比较两对象是否相等,用于数组等形式 public static b原创 2017-03-09 22:41:22 · 526 阅读 · 0 评论 -
ReentrantLock原理探究(二)
前言上篇ReentrantLock原理探究(一)介绍了ReentrantLock类的使用说明,详细解析了关于非公平锁的lock()过程。这篇我们继续分析。原创 2017-05-24 12:42:10 · 733 阅读 · 0 评论 -
ReentrantLock原理探究(一)
前言ReentrantLock类是synchronized语义的替代品,可以实现与其相同的功能,了解其实现原理对并发编程无疑是很有帮助的。其次,ReentrantLock 的实现基础AQS(AbstractQueuedSynchronizer)也是java并发编程中相当重要的一个类,所以无论如何,我们都要了解一番。原创 2017-05-21 10:16:32 · 1228 阅读 · 3 评论 -
jav学习笔记-String源码分析
java中用String类表示字符串,是lang包里面使用频率很高的一个类,今天我们就来深入源码解析。事例和特性均基于java8版本。原创 2016-11-11 00:27:27 · 2964 阅读 · 0 评论 -
java I/O体系总结(二) java IO补充
java I/O 体系总结二 前言 继续说java的I/O体系,主要补充下上文没有提到的知识点或类。 java有关io的类在java.io包中。主要有以下几个部分。 java i/o流部分(也是IO的主体部分) io辅助类,如File、RandomAccessFile或FileDescriptor,Closeable及Flushable等。 io异常类 io流分类 根据数据...原创 2018-09-14 12:00:45 · 332 阅读 · 0 评论