在程序操作中往往會產生很多大量的無用的內存空間,此時,這些空間如果沒有被回收,則肯定造成系統會慢,JAVA 中提供了一種機制——自動垃圾收集機制,可以收集各種垃圾的空間,釋放使用空間。
垃圾回收機制放在JVM里,由JVM完全負責回收事宜,即Java垃圾回收釋放內存是Java運行系統自己自動完成的,不需要程序員干預,程序員也無法干預,負責回收的是垃圾回收器。當一個對象不再有任何一個引用變量指向它時,這個對象就會被垃圾回收機制回收了。就是說,當在堆內存中的某一對象沒有任何引用時,就意味就意味著告訴JVM“不要這個對象,可以回收了”。JVM的垃圾回收機制對堆空間做實時監測。
Java虛擬機的本質是實現Java代碼在不同操作系統下都可以執行即Java的跨平臺,可以實現“一次編寫,到處執行”的效果。Java程序先經過編寫生成.java源程序,然后經過Java編譯器編譯生成.class字節碼,這時運行虛擬機,虛擬機會啟動類加載器,然后類加載器會找到APT中相對應的類進行加載,進行匹配后,再進行字節碼校驗,解釋器進行解釋,最后交給操作系統控制硬件執行。
2010年10月16日