Java 基礎面試題精選(二):日期時間、異常處理、集合框架、多執行緒、IO、XML、JDBC 進階
本文為「Java 基礎面試題」系列第二部分,涵蓋日期時間 API(含 Java 8 新特性)、斷言、Error/Exception 差異、try-catch-f
Java 基礎面試題精選(三):JDBC、正則、反射、設計模式、Servlet/JSP、Spring 核心
本文為「Java 基礎面試題」系列第三部分,涵蓋 JDBC 事務與大物件處理、正則表達式、反射機制、面向物件六大原則一法則、23 種設計模式、UML、ORM/C
Java 從資料庫表構建樹狀結構並輸出 JSON:完整實作指南
組織架構、選單權限、分類目錄等業務場景常需將扁平化資料表(含 id、parentId、name)轉換為樹狀 JSON。本文提供基於 fastjson 的通用樹構
Java 集合框架經典練習題:不重複隨機字串與數字生成
集合框架(List、Set、Map)是 Java 核心基礎,靈活運用其特性(去重、隨機存取、鍵值映射)能優雅解決許多演算法題目。本文精選兩道經典練習,示範「大問
Java 圖片處理實戰:縮略圖生成與座標裁剪完整指南
在相簿瀏覽、頭像上傳等場景中,縮略圖生成與區域裁剪是高頻需求。本文提供兩個生產級工具類:ImageUtil(等比/強制縮略圖)與 ImageUtil2(座標裁剪
JVM 運行時記憶體分配機制深度解析:執行緒堆疊與主記憶體交互
在《Java 垃圾回收整理》一文中,我們已概覽 JVM 運行時記憶體區域劃分。本文聚焦於 JVM 虛擬機棧(執行緒堆疊) 與 堆記憶體 之間的變數存取與同步機制
Java 面試高頻題精選:從基礎語法到併發集合
核心概念辨析 Error vs Exception:嚴重性與可恢復性 Error:JVM 層級嚴重問題(如 OutOfMemoryError、StackOv
Java Random 類深度解析:隨機數生成與種子機制
Java 隨機數生成核心機制 java.util.Random 是 Java 標準庫中生成偽隨機數的基礎工具類。理解其種子機制與生成原理,對於編寫可重現的測試案
Java CountDownLatch 實戰:精確控制並發測試啟動、實現真正的同時併發
普通 for 循環啟動線程無法保證同時執行。CountDownLatch(倒數閂)通過「等待計數歸零」機制,實現多線程精確同步啟動,是並發測試、壓力測試的標準工
Java Exchanger 實戰:雙線程數據緩衝區零拷貝交換模式
Exchanger 是 JDK 併發包中獨特的同步點,支援兩個線程在同步點交換數據對象。本文通過「讀線程填充緩衝區、寫線程消費緩衝區」的雙緩衝模式演示其核心價值
Java 多線程 FutureTask 實戰:異步預加載、結果緩存、超時控制完整指南
FutureTask 實現了 Future 和 Runnable,是「異步計算+結果獲取」的核心工具。本文通過預加載場景演示其核心用法,並延伸超時、取消、異常處
Java Thread.join() 方法詳解:主線程等待子線程完成的同步利器
`Thread.join()` 是 Java 多線程中最直觀的同步原語:**當前線程調用目標線程的 `join()`,將阻塞直到目標線程執行結束 (正常返回或拋
Java 線程中斷機制深度解析:volatile 標誌 vs interrupt() 的正確姿勢
優雅地停止執行中的線程是並發編程核心難題。Java **不提供**安全的 `stop()`/`suspend()` (已棄用),標準機制是 **協作式中斷**:
Java 隨機數完全指南:Math.random() vs Random 類 vs ThreadLocalRandom vs SecureRandom
Java 提供多層次隨機數 API,從簡單的 `Math.random()` 到密碼學級的 `SecureRandom`。選擇錯誤會導致**效能瓶頸、線程爭用、
Java 陣列定義完整指南:三種宣告方式、動態創建、與 C 語言差異對比
Java 陣列是**固定長度、同類型元素、堆上分配**的引用類型容器。雖語法與 C/C++ 相似,但語義差異巨大。本文系統梳理三種定義方式、動態創建機制、記憶體
Java 進制轉換基礎教程:十進制轉二/八/十六進制的手動實現與內建 API
進制轉換是計算機科學基礎,也是面試高頻考點。本文從**除基取餘法**原理出發,實現十進制轉二進制、八進制、十六進制的手動算法,並對比 Java 標準庫 API
Java 計算 100-999 之間所有水仙花數 (阿姆斯壯數) 完整實現
水仙花數,又稱 **阿姆斯壯數** 或 **自戀數**,是指一個 n 位數,其各位數字的 n 次冪之和等於該數本身。三位數水仙花數定義: $$ abc = a^
Java 處理超長整數的兩種經典實現 (字元陣列與流式讀取)
當整數位數超過 `long` (19 位) 或 `BigInteger` 建構子字串長度限制時,需自行實現超長整數讀取與儲存。本文介紹兩種經典方案:**字元陣列