Java 面試精選:網絡、事務、IO、JVM、GC 及 Spring 核心原理
Java 面試精選:網絡、事務、IO、JVM、GC 及 Spring 核心原理 本文整理了高頻 Java 面試題,涵蓋網絡故障排查、數據庫事務、IO 流體系、序
Java Lambda 表達式完整指南:從匿名內部類到方法引用
Java Lambda 表達式完整指南:從匿名內部類到方法引用 Java 8 引入的 Lambda 表達式是語言發展史上的里程碑,它讓我們能以更簡潔、函數式的風
Spring MVC 整合 Hibernate Validator 實現參數校驗(JSR-303/JSR-380)
依賴坐標 <!-- Spring Boot 2.x / Spring 5.x 自動傳遞 --> <dependency> <
《Java 編程思想》讀書筆記(一):面向對象核心思想與設計原則
前言 《Java 編程思想》被公認為 Java 程序員「必讀聖經」。本筆記記錄第一章核心觀點,結合生活化比喻(可樂瓶、皇帝繼位等)輔助理解,適合初學者建立 OO
Struts 2 類型轉換:為集合屬性指定泛型元素類型(*-conversion.properties)
問題背景 Struts 2 通過 OGNL 表達式將請求參數自動填充到 Action 屬性。對於集合類型屬性(List、Set、Map),框架無法從泛型擦除後的
《深入理解 Java 虛擬機》學習筆記:第二章 Java 內存區域與 OutOfMemoryError 分析
JVM 運行時數據區域(JDK 8 模型) Java 虛擬機在執行程序時將管理的內存劃分為若干個數據區域,每個區域有特定用途、創建/銷毀時間。線程私有區域隨線程
Java 練習題:楊輝三角打印(二維數組動態構建)
題目 打印楊輝三角,行數由用戶輸入決定。 數學規律 第 n 行有 n 個數字(行號從 1 開始) 每行首尾為 1 中間數字 = 上一行同位置 + 上一行前一
MyBatis 高級映射完全指南:resultMap 實現一對一、一對多、多對多關聯查詢
前言:為什麼需要 resultMap? MyBatis 默認的 resultType 只能將查詢結果平鋪映射到單個 POJO,無法處理對象圖(嵌套對象/集合)。
Java 練習題:從 1、2、3、4 組成互不相同的三位數(全排列應用)
題目 有數字 1、2、3、4,能組成多少個互不相同且無重複數字的三位數?請列出所有數字並統計個數。 數學分析 這是經典的排列問題:從 4 個不同元素中取 3
Java 練習題:分數序列前 20 項求和(斐波那契分數變體)
題目分析 給定分數序列:2/1, 3/2, 5/3, 8/5, 13/8, 21/13... 規律發現: 分子分母均為斐波那契數列:F(n+2)/F(n+1)
Spring MVC 參數傳遞與數據綁定實戰:從 ModelAndView 到 @RequestBody 完整指南
Spring MVC 數據流向核心模型 前端請求 → DispatcherServlet → HandlerMapping → Controller方法參數綁
【Java 核心】字符串參數傳遞機制深度解析:為什麼 Java 只有「值傳遞」
經典困惑代碼 public class StringPassByValue { public static void change(String x)
Java 多線程核心:sleep() 與 wait() 區別深度解析(含 JDK 源碼註釋)
核心結論先行 維度Thread.sleep()Object.wait() 所屬類Thread(靜態方法)Object(實例方法) 核心目的線程暫停/控制執行節
Java SE 基礎:String 類核心方法大全與 PHP 對照表
String 核心特性 不可變性:String 對象一旦創建,內容不可更改。所有「修改」操作實際返回新對象 常量池優化:字面量創建(abc)自動進入字符串常量
Java 算法練習:水仙花數(阿姆斯特朗數)查找與判斷
什麼是水仙花數? 水仙花數(Narcissistic Number),又稱阿姆斯特朗數或自戀數。指一個 n 位數,其各位數字的 n 次方之和等於該數本身。最經典
Java IO 流體系總結:從 File 類到字節/字符流完整圖譜
一、File 類:文件系統抽象路徑 java.io.File 類代表文件系統中的文件或目錄路徑(不可直接讀寫文件內容)。核心能力: 路徑操作:獲取絕對路徑、父
Java 多線程系列(八):線程優先級的規則性、隨機性與實戰誤區
Java 多線程系列(八):線程優先級的規則性、隨機性與實戰誤區 線程優先級是線程調度的參考依據,但不保證執行順序。本文通過源碼分析、繼承性驗證、壓測實驗,揭示
Java 編譯器如何處理方法重載與覆蓋:靜態綁定 vs 動態分發
Java 編譯器如何處理方法重載與覆蓋:靜態綁定 vs 動態分發 多態是面向對象核心特性,分為編譯期多態(重載)和運行期多態(覆蓋)。本文通過字節碼視角解析 j