原文:java源碼解析

String深入解析 String具有不變性的原因: String被final修飾,它不可能被繼承,也就是任何對String的操作方法,都不會被繼承覆寫 String中保存數據的是一個char數組的value,它被final修飾,它的內存地址一旦賦值無法修改 String相等判斷源碼 判斷類型是否相同 判斷長度是否相同 比較每一個字符是否相等 當上述 個條件均成立時,兩個String相等 Stri ...

2019-10-24 21:09 0 663 推薦指數:

查看詳情

Java——HashMap源碼解析

以下針對JDK 1.8版本中的HashMap進行分析。 概述 哈希表基於Map接口的實現。此實現提供了所有可選的映射操作,並且允許鍵為null,值也為null。HashMap 除了不支持同 ...

Mon Oct 22 00:02:00 CST 2018 0 1125
Java——ArrayList源碼解析

以下針對JDK 1.8版本中的ArrayList進行分析。 概述 ArrayList基於List接口實現的大小可變的數組。其實現了所有可選的List操作,並且元素允許為任意類型,包括nul ...

Wed Nov 07 08:35:00 CST 2018 1 583
Java 8 ThreadLocal 源碼解析

Java 中的 ThreadLocal是線程內的局部變量, 它為每個線程保存變量的一個副本。ThreadLocal 對象可以在多個線程中共享, 但每個線程只能讀寫其中自己的副本。 目錄: 代碼示例 源碼解析 InheritableThreadLocal ...

Sun Dec 23 03:21:00 CST 2018 0 1161
java反射使用和源碼解析

1 反射 1.1 什么是反射 正射:指的是我們知道類的定義和類中的方法名稱,直接先創建對象,然后通過對象去調用方法。例如: Apple apple = ne ...

Fri Mar 29 04:59:00 CST 2019 0 562
java集合之List源碼解析

List是java重要的數據結構之一,我們經常接觸到的有ArrayList、Vector和LinkedList三種,他們都繼承來自java.util.Collection接口,類圖如下 接下來,我們對比下這三種List的實現和不同: 一、基本實現 1、ArrayList ...

Sun Sep 23 03:03:00 CST 2018 0 1927
Java並發之Semaphore源碼解析(二)

在上一章,我們學習了信號量(Semaphore)是如何請求許可證的,下面我們來看看要如何歸還許可證。 可以看到當我們要歸還許可證時,不論是調用release()或是release(int permi ...

Mon Jul 05 02:09:00 CST 2021 0 179
Java並發之ReentrantReadWriteLock源碼解析(二)

先前,筆者和大家一起了解了ReentrantReadWriteLock的寫鎖實現,其實寫鎖本身實現的邏輯很少,基本上還是復用AQS內部的等待隊列思想。下面,我們來看看ReentrantReadWrit ...

Fri Jul 09 04:36:00 CST 2021 0 138
Java並發之ReentrantLock源碼解析(三)

ReentrantLock和BlockingQueue 首先,看到這個標題,不要懷疑自己進錯文章,也不要懷疑筆者寫錯,哈哈。本章筆者會從BlockingQueue(阻塞隊列)的角度,看看juc包下的阻塞隊列是如何使用ReentrantLock。這個章節筆者會介紹部分阻塞隊列的源碼,但不會着墨過多 ...

Thu Jul 01 02:59:00 CST 2021 0 183
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM