買這商品的人也買了...
-
$403重構與模式 (Refactoring to Patterns) -
Java 程序員面試筆試真題與解析$354$336 -
$534精通 OpenStack, 2/e (Mastering OpenStack, 2/e) -
$422JVM G1 源碼分析和調優 -
$403Web 漏洞防護 -
建立演進式系統架構|支援常態性的變更 (Building Evolutionary Architectures: Support Constant Change)$480$379 -
$602Spring5 核心原理與 30個類手寫實戰 -
Webpack:卓效 Web 前端開發建置工具強能技術 (舊名: JS 高手昇華之路:Webpack 是唯一的捷徑)$580$493 -
敏捷大師精選 (Best Agile Articles of 2018)$750$585 -
$422Java 並發實現原理:JDK 源碼剖析 -
$534超大流量分佈式系統架構解決方案:人人都是架構師2.0 -
$301GraphQL 實戰:寫給全棧工程師們 -
Spring 響應式編程 (Hands-On Reactive Programming in Spring 5: Build cloud-ready, reactive systems with Spring 5 and Project Reactor)$594$564 -
$474Kotlin 編程實踐 (Kotlin Cookbook: A Problem-Focused Approach) -
$811Spring + Spring MVC + MyBatis 整合開發實戰 -
$454TypeScript 項目開發實戰 -
$479React 工程師修煉指南 -
$659深入淺出 ASP.NET Core -
和艦長一起 30 天玩轉 GitLab(iT邦幫忙鐵人賽系列書)$500$390 -
在 React 生態圈打滾的一年 feat.TypeScript(iT邦幫忙鐵人賽系列書)$550$429 -
MongoDB 技術手冊, 3/e (MongoDB: The Definitive Guide: Powerful and Scalable Data Storage, 3/e)$780$616 -
高生產力軟體開發實務|以 Java 專案驅動的基礎指南 (Real-World Software Development)$480$379 -
Spring Data JPA:入門、實戰與進階$774$735 -
$454前端工程質量保障體系實踐 -
Clean Architecture 實作篇:在整潔的架構上弄髒你的手 (Get Your Hands Dirty on Clean Architecture)$500$390
中文年末書展|繁簡參展書2書75折 詳見活動內容 »
-
75折
為你寫的 Vue Components:從原子到系統,一步步用設計思維打造面面俱到的元件實戰力 (iThome 鐵人賽系列書)$780$585 -
75折
BDD in Action, 2/e (中文版)$960$720 -
75折
看不見的戰場:社群、AI 與企業資安危機$750$563 -
79折
AI 精準提問 × 高效應用:DeepSeek、ChatGPT、Claude、Gemini、Copilot 一本搞定$390$308 -
7折
超實用!Word.Excel.PowerPoint 辦公室 Office 365 省時高手必備 50招, 4/e (暢銷回饋版)$420$294 -
75折
裂縫碎光:資安數位生存戰$550$412 -
85折
日本當代最強插畫 2025 : 150位當代最強畫師豪華作品集$640$544 -
79折
Google BI 解決方案:Looker Studio × AI 數據驅動行銷實作,完美整合 Google Analytics 4、Google Ads、ChatGPT、Gemini$630$498 -
79折
超有料 Plus!職場第一實用的 AI 工作術 - 用對 AI 工具、自動化 Agent, 讓生產力全面進化!$599$473 -
75折
從零開始學 Visual C# 2022 程式設計, 4/e (暢銷回饋版)$690$518 -
75折
Windows 11 制霸攻略:圖解 AI 與 Copilot 應用,輕鬆搞懂新手必學的 Windows 技巧$640$480 -
75折
精準駕馭 Word!論文寫作絕非難事 (好評回饋版)$480$360 -
Sam Yang 的插畫藝術:用 Procreate / PS 畫出最強男友視角 x 女孩美好日常$699$629 -
79折
AI 加持!Google Sheets 超級工作流$599$473 -
78折
想要 SSR? 快使用 Nuxt 吧!:Nuxt 讓 Vue.js 更好處理 SEO 搜尋引擎最佳化(iThome鐵人賽系列書)$780$608 -
75折
超實用!業務.總管.人資的辦公室 WORD 365 省時高手必備 50招 (第二版)$500$375 -
7折
Node-RED + YOLO + ESP32-CAM:AIoT 智慧物聯網與邊緣 AI 專題實戰$680$476 -
79折
「生成式⇄AI」:52 個零程式互動體驗,打造新世代人工智慧素養$599$473 -
7折
Windows APT Warfare:惡意程式前線戰術指南, 3/e$720$504 -
75折
我輩程式人:回顧從 Ada 到 AI 這條程式路,程式人如何改變世界的歷史與未來展望 (We, Programmers: A Chronicle of Coders from Ada to AI)$850$637 -
75折
不用自己寫!用 GitHub Copilot 搞定 LLM 應用開發$600$450 -
79折
Tensorflow 接班王者:Google JAX 深度學習又快又強大 (好評回饋版)$780$616 -
79折
GPT4 會你也會 - 共融機器人的多模態互動式情感分析 (好評回饋版)$700$553 -
79折
技術士技能檢定 電腦軟體應用丙級術科解題教本|Office 2021$460$363 -
75折
Notion 與 Notion AI 全能實戰手冊:生活、學習與職場的智慧策略 (暢銷回饋版)$560$420
相關主題
商品描述
本書通過圖文結合的講解方式幫助讀者理解JDK源碼,完成多線程並發編程從入門到實踐的飛躍,
全書分為7章:
D1章主要講解Java基礎類的源碼實現;
D2章主要剖析了常用集合類的原理源碼;
D3章講解了常用原子類AtomicLong和LongAdder的用法和原理;
D4章主要剖析了JUCD佔鎖ReentrantLock的原理源碼,ReentrantLock是學習其他並發類的基礎;
D5章剖析了兩種常用並發容器List和Map的實現原理,重點講解了ConcurrentHashMap的實現;
D6章講解了阻塞隊列的實現,著重講解其代表類ArrayBlockingQueue 和LinkedBlockingQueue的原理源碼;
D7章剖析了線程池的原理源碼。
本書適合Java研發工程師、對JDK源碼或Java並發編程感興趣以及希望探索JUC包原理源碼人員閱讀。
目錄大綱
◆ 目錄:◆
前言
●第1章Java必須掌握的基礎類
1.1JDK中所有類的基類——Object類
1.1.1為什麼java.lang包下的類不需要手動導入
1.1.2類構造器
1.1.3equals方法
1.1. 4getClass方法
1.1.5hashCode方法
1.1.6toString方法
1.1.7notify()/notifyAll()/wait()
1.1.8finalize方法
1.1.9registerNatives方法
1.2Java的深拷貝和淺拷貝
1.2.1創建對象的5種方式
1.2. 2Clone方法
1.2.3基本類型和引用類型
1.2.4淺拷貝
1.2.5深拷貝
1.2.6如何實現深拷貝
1.3最常用的引用類——Integer類
1.3.1Integer類簡介
1.3.2Integer的主要屬性
1.3. 3Integer類和int的區別
1.3.4構造方法Integer(int),Integer(String)
1.3.5toString(),toString(int i)和toString(int i,int radix)
1.3.6自動拆箱和裝箱
1.3.7回顧本節開篇的問題
1.3.8進行測試
1.3.9equals()方法
1.3.10String類的定義
1.3.11hashCode()方法
1.3.12parseInt(String s)和parseInt (String s,int radix)方法
1.3.13compareTo(Integer anotherInteger)和compare(int x,int y)方法
1.4日常編碼中最常用的類——String類
1.4.1字段屬性
1.4.2構造方法
1.4.3equals (Object anObject)方法
1.4.4hashCode()方法
1.4.5charAt(int index)方法
1.4.6compareTo(String anotherString)和compareToIgnoreCase(String str)方法
1.4.7concat(String str)方法
1.4.8indexOf(int ch)和indexOf (int ch,int fromIndex)方法
1.4.9split(String regex)和split(String regex,int limit)方法
1.4.10replace(char oldChar,char newChar)和String replaceAll(String regex,
String replacement)方法
1.4.11substring(int beginIndex)和substring(int beginIndex,int endIndex)方法
1.4.12常量池
1.4.13intern()方法
1.4 .14String真的不可變嗎
1.5本章小結
●第2章Java數據結構的實現集合類
2.1集合工具類的重要類——Arrays類
2.1.1asList方法
2.1.2sort方法
2.1.3binarySearch方法
2.1.4copyOf方法
2.1. 5equals和deepEquals方法
2.1.6fill方法
2.1.7toString和deepToString方法
2.2List集合的一種典型實現——ArrayList類
2.2.1ArrayList定義
2.2.2字段屬性
2.2.3構造函數
2.2.4添加元素
2.2.5刪除元素
2.2.6修改元素
2.2.7查找元素
2.2.8遍歷集合
2.2.9SubList方法
2.2.10size()方法
2.2.11isEmpty()方法
2.2.12trimToSize()方法
2.3List集合的另一種典型實現——LinkedList類
2.3.1LinkedList定義
2.3.2字段屬性
2.3 .3構造函數
2.3.4添加元素
2.3.5刪除元素
2.3.6修改元素
2.3.7查找元素
2.3.8遍歷集合
2.3.9疊代器和for循環效率差異
2.4常用的集合——HashMap類
2.4.1Hash表
2.4.2什麼是HashMap
2.4.3HashMap定義
2.4.4字段屬性
2.4.5構造函數
2.4.6確定Hash桶數組索引位置
2.4.7添加元素
2.4.8擴容機制
2.4.9刪除元素
2.4.10查找元素
2.4.11遍曆元素
2.5Map集合的一種實現——LinkedHashMap類
2.5.1LinkedHashMap定義
2.5.2字段屬性
2.5.3構造函數
2.5.4添加元素
2.5.5刪除元素
2.5.6查找元素
2.5.7遍曆元素
2.5.8疊代器
2.6基於樹實現的類——TreeMap類
2.6 .1TreeMap定義
2.6.2字段定義
2.6.3構造函數
2.6.4添加元素
2.6.5刪除元素
2.6.6查找元素
2.6.7遍曆元素
2.7本章小結
●第3章Java並發包原子類
3.1原子變量操作類AtomicLong
3.2高性能原子操作類LongAdder
3.2.1LongAdder介紹
3.2.2LongAdder源碼解析
3.3本章小結
●第4章Java並發包鎖
4.1為什麼引入JUC鎖
4.2獨占鎖ReentrantLock原理
4.2.1ReentrantLock簡介
4.2.2AQS同步隊列
4.2.3鎖的獲取
4.2.4鎖的釋放
4.2.5公平鎖和非公平鎖實現區別
4.3Condition條件變量
4.3.1Condition案例
4.3.2Condition的源碼解析
4.4本章小結
●第5章並發容器原理
5.1List並發容器
5.1.1add方法:添加元素
5.1.2修改/插入/刪除
5.1.3get方法:獲取元素
5.2Map並發容器
5.2.1ConcurrentHashMap簡介
5.2.2put方法:添加元素
5.2.3remove方法:刪除元素
5.2.4get方法:獲取元素
5.2.5獲取元素個數:size方法
5.2.6擴容與數據遷移
5.3本章小結
●第6章阻塞隊列原理
6.1生產者-消費者模式
6.2阻塞隊列實現原理
6.3ArrayBlockingQueue源碼解析
6.3.1出隊和入隊的環形隊列
6.3.2插入元素
6.3 .3移除元素
6.4LinkedBlockingQueue源碼解析
6.4.1插入元素
6.4.2移除元素
6.5本章小結
●第7章線程池原理解析
7.1為什麼要用線程池
7.2線程池的優點
7.3線程池實現原理
7.4線程池ThreadPoolExecutor
7.5ThreadPoolExecutor源碼解析
7.5.1execute提交任務
7.5.2addWorker創建並執行工作線程
7.5. 3關閉線程池
7.6本章小結
●附錄
紅黑樹
基礎工具類:Unsafe類
基礎工具類:LockSupport類
