垃圾回收
分配出去的內存得不到回收,導致程序運行速度下降,成爲內存泄露。
JAVA的內存回收屬於虛擬機自動回收,不需要手動操作。虛擬機有一個後臺線程跟蹤對象狀態,在CPU空閒或內存不足時,觸發垃圾回收。程序無法控制垃圾回收的時間及順序。
垃圾回收主要在做兩個方面的工作:
1. 垃圾對象發現。
2. 內存回收。
垃圾回收的對象都是虛擬機堆內存的內存空間,垃圾回收的對象就是內存,虛擬機對數據庫連接、磁盤IO、網絡連接的釋放無能爲力。
垃圾對象的發現是需要時間的,若程序中顯示標記爲null,將幫助虛擬機識別垃圾對象。
程序中可以使用System.gc()建立系統進行垃圾回收,但不一定會立即執行。
基本編譯運行命令
編譯class文件
javac -d [dir] [filename]
運行class文件
java [classfilename]