亚洲欧洲国产欧美一区精品,激情五月亚洲色五月,最新精品国偷自产在线婷婷,欧美婷婷丁香五月天社区

      考試首頁 | 考試用書 | 培訓(xùn)課程 | 模擬考場 | 考試論壇  
      全國  |             |          |          |          |          |         
        當(dāng)前位置:計算機(jī)等級 > 二級考試 > Java語言程序設(shè)計 > 考試輔導(dǎo) > 文章內(nèi)容
        

      計算機(jī)二級考試Java語言程序設(shè)計入門教程:Java技術(shù)三大特性

      中華IT學(xué)院   【 】  [ 2017年6月5日 ]

        2 :垃圾回收

        2.1 :什么是垃圾

        在程序運行的過程中,存在被分配了的內(nèi)存塊不再被需要的情況,那么這些內(nèi)存塊對程序來講就是垃圾。

        產(chǎn)生了垃圾,自然就需要清理這些垃圾,更為重要的是需要把這些垃圾所占用的內(nèi)存資源,回收回來,加以再利用,從而節(jié)省資源,提高系統(tǒng)性能。

        2.2 :垃圾回收

        - 不再需要的已分配內(nèi)存應(yīng)取消分配(釋放內(nèi)存)

        - 在其它語言中,取消分配是程序員的責(zé)任

        - Java 編程語言提供了一種系統(tǒng)級線程以跟蹤內(nèi)存分配

        - 垃圾收集

        - 可檢查和釋放不再需要的內(nèi)存

        - 可自動完成上述工作

        - 可在 JVM 實現(xiàn)周期中,產(chǎn)生意想不到的變化

        許多編程語言都允許在程序運行時動態(tài)分配內(nèi)存,分配內(nèi)存的過程由于語言句法不同而有所變化,但總是要將指針返回到內(nèi)存的起始位置,當(dāng)分配內(nèi)存不再需要時(內(nèi)存指針已溢出范圍),程序或運行環(huán)境應(yīng)釋放內(nèi)存。

        在 C,C++ 或其它語言中,程序員負(fù)責(zé)釋放內(nèi)存。有時,這是一件很困難的事情。因為你并不總是事先知道內(nèi)存應(yīng)在何時被釋放。 當(dāng)在系統(tǒng)中沒有能夠被分配的內(nèi)存時,可導(dǎo)致程序癱瘓,這種程序被稱作具有內(nèi)存漏洞。

        Java 編程語言解除了程序員釋放內(nèi)存的責(zé)任。它可提供一種系統(tǒng)級線程以跟蹤每一次內(nèi)存的分配情況。在 Java 虛擬機(jī)的空閑周期,垃圾收集線程檢查并釋放那些可被釋放的內(nèi)存。垃圾收集在 Java 技術(shù)程序的生命周期中自動進(jìn)行,它解除了釋放內(nèi)存的要求,這樣能夠有效避免內(nèi)存漏洞和內(nèi)存泄露(內(nèi)存泄露就是程序運行期間,所占用的內(nèi)存一直往上漲,很容易造成系統(tǒng)資源耗盡而降低性能或崩潰)。

        2.3 :提示

        (1):在 Java 里面,垃圾回收是一個自動的系統(tǒng)行為,程序員不能控制垃圾回收的功能和行為。比如垃圾回收什么時候開始,什么時候結(jié)束,還有到底哪些資源需要回收等,都是程序員不能控制的。

        (2):有一些跟垃圾回收相關(guān)的方法,比如:System.gc() , 記住一點,調(diào)用這些方法,僅僅是在通知垃圾回收程序,至于垃圾回收程序運不運行,什么時候運行,都是無法控制的。

        (3):程序員可以通過設(shè)置對象為 null(后面會講到)來標(biāo)示某個對象不再被需要了,這只是表示這個對象可以被回收了,并不是馬上被回收。

      分享到:
      本文糾錯】【告訴好友】【打印此文】【返回頂部
      將考試網(wǎng)添加到收藏夾 | 每次上網(wǎng)自動訪問考試網(wǎng) | 復(fù)制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
      關(guān)于本站  網(wǎng)站聲明  廣告服務(wù)  聯(lián)系方式  站內(nèi)導(dǎo)航  考試論壇
      Copyright © 2006-2017 中華考試網(wǎng)(Examw.com) All Rights Reserved  營業(yè)執(zhí)照