實務解析,說明為什麼 Java 應用可能「記憶體外洩」並變慢:遺漏移除的監聽器 (
addActionListener/
removeActionListener)、長壽的靜態集合、未關閉的資源(建議:
try-with-resources)、會保留參照的匿名/內部類別,以及濫用
System.gc()。將學會閱讀 GC 日誌(
-Xlog:gc*、
-XX:+PrintGCDetails)、選擇合適的回收器、用
WeakHashMap 建立快取、進行監控(
jvisualvm、
jconsole)、分析 heap dump,並正確調整
-Xmx/
-Xms。最後 — 提供真實的外洩案例與修正方式。