計算機二級考試java基礎知識

來源:文萃谷 2.17W

只有苦中尋樂,以苦求樂,才能在知識的海洋裏乘風破浪,奮鬥拼搏,才能享受到勝利者無限的幸福與歡樂。以下是本站小編整理的計算機二級考試java基礎知識,歡迎學習!

計算機二級考試java基礎知識

  【知識點一】無用內存自動回收機制

  1.2.2 無用內存自動回收機制

在程序的執行過程中,部分內存在使用過後就處於廢棄狀態,如果不及時進行無用內存的回收,就會導致內存泄漏,進而導致系統崩潰。在C++語言中是由程序員進行內存回收的,程序員需要在編寫程序的時候把不再使用的對象內存釋放掉;但是這種人為的管理內存釋放的方法卻往往由於程序員的疏忽而致使內存無法回收,同時也增加了程序員的工作量。而在java運行環境中,始終存在着一個系統級的線程,專門跟蹤內存的使用情況,定期檢測出不再使用的內存,並進行自動回收,避免了內存的泄露,也減輕了程序員的工作量。

  1.2.3 代碼安全性檢查機制

字節碼的執行需要經過三個步驟,首先由類裝載器(class loader)負責把類文件(s文件)加載到java虛擬機中,在此過程需要檢驗該類文件是否符合類文件規範;其次字節碼校驗器(bytecode verifier)檢查該類文件的代碼中是否存在着某些非法操作,例如applet程序中寫本機文件系統的操作;如果字節碼校驗器檢驗通過,由java解釋器負責把該類文件解釋成為機器碼進行執行。java虛擬機採用的是"沙箱"運行模式,即把java程序的代碼和數據都限制在一定內存空間裏執行,不允許程序訪問該內存空間外的內存,如果是applet程序,還不允許訪問客户端機器的文件系統。

  【知識點二】java虛擬機

  1.2 java的工作原理

  1.2.1 java虛擬機

java虛擬機是軟件模擬計算機,可以在任何處理器上(無論是在計算機中還是在其它電子設備中)安全並且兼容的執行保存在s文件中的字節碼。java虛擬機的`"機器碼"保存在s文件中,有時也可以稱之為字節碼文件。java程序的跨平台主要是指字節碼文件可以在任何具有java虛擬機的計算機或者電子設備上運行,java虛擬機中的java解釋器負責將字節碼文件解釋成為特定的機器碼進行運行。java源程序需要通過編譯器編譯成為s文件(字節碼文件),java程序的編譯和執行過程如動畫所示。

但是,java虛擬機的建立需要針對不同的軟硬件平台做專門的實現,既要考慮處理器的型號,也要考慮操作系統的種類。如下圖所示,目前在SPARC結構、X86結構、MIPS和PPC等嵌入式處理芯片上、在UNIX、Linux、windows和部分實時操作系統上都有java虛擬機的實現。

  【知識點三】java語言的產生

  1.1.2 java語言的產生

俗話説:"有心栽花花不成,無心插柳柳成蔭"。Sun公司絕沒想到本想用於消費電子產品開發的編程語言卻率先在網絡中得到了廣泛應用,但是也可以説是"東方不亮西方亮",正是因為java語言在設計目標上的正確性使得java語言"是金字總會發光的"。C語言是面向過程的語言,也是使用率非常高的語言;而面向對象的思想引入到編程語言之後,C語言就被改造成為面向對象的C++語言,得到了廣泛的應用。但是C++語言必須兼容C語言,因此C++語言是面向過程和麪向對象混合的語言。

java語言產生於C++語言之後,是完全的面向對象的編程語言,充分吸取了C++語言的優點,採用了程序員所熟悉的C和C++語言的許多語法,同時又去掉了C語言中指針、內存申請和釋放等影響程序健壯性的部分,可以説java語言是站在C++語言這個"巨人的肩膀上"前進的。

java語言的一個目標是跨平台,因此採用瞭解釋執行而不是編譯執行的運行環境,在執行過程中根據所在的不同的硬件平台把程序解釋為當前的機器碼,實現跨平台運行。而動態下載程序代碼的機制完全是為了適應網絡計算的特點,程序可以根據需要把代碼實時的從服務器中下載過來執行,在此之前還沒有任何一種語言能夠支持這一點。

java是印尼的一個小島,盛產咖啡,而程序員往往喜歡喝咖啡,因此取名為java語言。看來,目前java這杯咖啡已經飄香在世界各地。

任何事物的產生既有必然的原因也有偶然的因素,java語言的出現也驗證了這一點。1991年,美國Sun Microsystems公司的某個研究小組為了能夠在消費電子產品上開發應用程序,積極尋找合適的編程語言。消費電子產品種類繁多,包括PDA、機頂盒、手機等等,即使是同一類消費電子產品所採用的處理芯片和操作系統也不相同,也存在着跨平台的問題。當時最流行的編程語言是C和C++語言,Sun公司的研究人員就考慮是否可以採用C++語言來編寫消費電子產品的應用程序,但是研究表明,對於消費電子產品而言C++語言過於複雜和龐大,並不適用,安全性也並不令人滿意。於是,Bill Joy先生領導的研究小組就着手設計和開發出一種語言,稱之為Oak。該語言採用了許多C語言的語法,提高了安全性,並且是面向對象的語言,但是Oak語言在商業上並未獲得成功。時間轉到了1995年,互聯網在世界上蓬勃發展,Sun公司發現Oak語言所具有的跨平台、面向對象、安全性高等特點非常符合互聯網的需要,於是改進了該語言的設計,要達到如下幾個目標:

◇ 創建一種面向對象的程序設計語言,而不是面向過程的語言;

◇ 提供一個解釋執行的程序運行環境,是程序代碼獨立於平台;

◇ 吸收C和C++的優點,使程序員容易掌握;

◇ 去掉C和C++中影響程序健壯性的部分,使程序更安全,例如指針、內存申請和釋放;

◇ 實現多線程,使得程序能夠同時執行多個任務;

◇ 提供動態下載程序代碼的機制;

◇ 提供代碼校驗機制以保證安全性;

最終,Sun公司給該語言取名為java語言,造就了一代成功的編程語言。

熱門標籤