首頁 - 網(wǎng)校 - 萬題庫 - 美好明天 - 直播 - 導(dǎo)航
您現(xiàn)在的位置: 考試吧 > 計算機等級考試 > 計算機二級考試 > JAVA > 復(fù)習(xí)資料 > 正文

全國計算機二級Java考試入門教程:Java 技術(shù)三大特性

來源:考試吧 2018-04-27 11:03:34 要考試,上考試吧! 萬題庫
“全國計算機二級Java考試入門教程:Java 技術(shù)三大特性”供考生參考。更多計算機等級考試內(nèi)容請訪問考試吧計算機等級考試網(wǎng)。

  點擊查看:全國計算機二級考試《Java》入門教程匯總

  Java 技術(shù)三大特性

  1 :虛擬機

  Java 虛擬機 JVM(Java Virtual Machine)在 Java 編程里面具有非常重要的地位,約相當(dāng)于前面學(xué)到的 Java 運行環(huán)境,虛擬機的基本功能如下:

  (1):通過 ClassLoader 尋找和裝載 class 文件

  (2):解釋字節(jié)碼成為指令并執(zhí)行,提供 class 文件的運行環(huán)境

  (3):進行運行期間垃圾回收

  (4):提供與硬件交互的平臺

  Java虛擬機是在真實機器中用軟件模擬實現(xiàn)的一種想象機器。Java虛擬機代碼被存儲在 .class文件中; 每個文件都包含最多一個public類。 Java 虛擬機規(guī)范為不同的硬件平臺提供了一種編譯Java技術(shù)代碼的規(guī)范,該規(guī)范使Java 軟件獨立于平臺,因為編譯是針對作為虛擬機的“一般機器”而做。這個“一般機器”可用軟件模擬并運行于各種現(xiàn)存的計算機系統(tǒng),也可用硬件來實現(xiàn)。編譯器在獲取Java應(yīng)用程序的源代碼后,將其生成字節(jié)碼,它是為JVM生成的一種機器碼指令。每個Java解釋器,不管它是Java技術(shù)開發(fā)工具,還是可運行applets 的Web瀏覽器,都可執(zhí)行JVM。

  JVM 為下列各項做出了定義

  - 指令集(相當(dāng)于中央處理器[CPU] )

  - 寄存器

  - 類文件格式

  - 棧

  - 垃圾收集堆

  - 存儲區(qū)

  JVM 的代碼格式由緊縮有效的字節(jié)碼構(gòu)成。 由 JVM 字節(jié)碼編寫的程序必須保持適當(dāng)?shù)念愋图s束。大部分類型檢查是在編譯時完成。任何從屬的 Java 技術(shù)解釋器必須能夠運行任何含有類文件的程序,這些類文件應(yīng)符合 Java 虛擬機規(guī)范中所指定的類文件格式。

  1.1 :虛擬機是 Java 平臺無關(guān)的保障

  正是因為有虛擬機這個中間層,Java 才能夠?qū)崿F(xiàn)與平臺無關(guān)。 虛擬機就好比是一個 Java運行的基本平臺,所有的 Java 程序都運行在虛擬機上,如下圖所示:

  

全國計算機二級Java考試入門教程:Java 技術(shù)三大特性

  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++ 或其它語言中,程序員負責(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 虛擬機的空閑周期,垃圾收集線程檢查并釋放那些可被釋放的內(nèi)存。垃圾收集在 Java 技術(shù)程序的生命周期中自動進行,它解除了釋放內(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(后面會講到)來標示某個對象不再被需要了,這只是表示這個對象可以被回收了,并不是馬上被回收。

  3 :代碼安全

  Java 如何保證編寫的代碼是安全可靠的呢?

  (1):第一關(guān):編寫的代碼首先要被編譯成為 class 文件,如果代碼寫得有問題,編譯期間就會發(fā)現(xiàn),然后提示有編譯錯誤,無法編譯通過。

  (2):第二關(guān):通過編譯關(guān)后,在類裝載的時候,還會進行類裝載檢查,把本機上的類和網(wǎng)絡(luò)資源類相分離,在調(diào)入類的時候進行檢查,因而可以限制任何“特洛伊木馬”的應(yīng)用。

  (3):第三關(guān):類裝載后,在運行前,還會進行字節(jié)碼校驗,以判斷你的程序是安全的。

  (4):第四關(guān):如果你的程序在網(wǎng)絡(luò)上運行,還有沙箱 (Sand Box)的保護,什么是沙箱呢?

  就是如果你的程序沒有獲得授權(quán),只能在沙箱限定的范圍內(nèi)運行,是不能夠訪問本地資源的,從而保證安全性。

  如下圖所示:

   全國計算機二級Java考試入門教程:Java 技術(shù)三大特性

  學(xué)習(xí)到這里,大家應(yīng)該對 Java 有了一定的了解了。 現(xiàn)在是否想要看看 Java 程序究竟什么樣子呢?是不是想要體會一下如何開發(fā) Java 程序呢?下面我們先來看看如何構(gòu)建 JSE 的環(huán)境,這是進行 Java 程序開發(fā)的第一步。

掃描/長按二維碼幫助考試通關(guān)
2018年等考報考資訊
2018等考各科通關(guān)技巧
2018各科最新預(yù)測試卷
2018等考各科備考資料

微信搜索"考試吧"了解更多考試資訊、下載備考資料

  相關(guān)推薦:

  2018年全國計算機等級考試必做試題匯總(各科目)

  2018年全國計算機等級考試復(fù)習(xí)知識點匯總(各科目)

  2018全國計算機等級考試備考經(jīng)驗及應(yīng)試技巧匯總

  歷年真題匯總|考試吧策劃:2018年計算機等級考試報考指南

0
收藏該文章
0
收藏該文章
文章搜索
萬題庫小程序
萬題庫小程序
·章節(jié)視頻 ·章節(jié)練習(xí)
·免費真題 ·?荚囶}
微信掃碼,立即獲。
掃碼免費使用
版權(quán)聲明:如果計算機等級考試網(wǎng)所轉(zhuǎn)載內(nèi)容不慎侵犯了您的權(quán)益,請與我們聯(lián)系800@exam8.com,我們將會及時處理。如轉(zhuǎn)載本計算機等級考試網(wǎng)內(nèi)容,請注明出處。
Copyright © 2004- 考試吧計算機等級考試網(wǎng) 出版物經(jīng)營許可證新出發(fā)京批字第直170033號 
京ICP證060677 京ICP備05005269號 中國科學(xué)院研究生院權(quán)威支持(北京)
在線模擬試題
考證通關(guān)殺器
考試最新資訊
學(xué)
一次通關(guān)技巧