摘 要:隨著科學技術的迅速發展,與計算機相關的各發面發展甚是迅猛,尤其是計算機軟件開發。與軟件開發緊密相關的編程語言近些年推陳出新,其中Java語言的誕生更是計算機軟件開發語言的又一里程碑。本文將對Java語言進行綜合性概述,對Java語言的重要特點進行闡述,對Java語言的相關技術進行淺析并進行Java編譯平臺的優勢分析。
關鍵詞:JAVA語言;相關技術;優勢分析
中圖分類號:TP312.2 文獻標識碼:A 文章編號:1674-7712 (2014) 04-0000-02
一、JAVA語言的概述
Java本叫Oak,是Sun公司始于1990年12月的“綠色項目”中編寫Star7應用程序的一個程序語言,綠色項目旨在于構筑出下一波計算機應用的趨勢并加以掌握,雖然綠色項目因產品不被當時的消費市場接受而面臨撤銷,但萬維網的興起讓Java Applet成為網頁互動技術的代表。1993年第一個萬維網瀏覽器Mosaic誕生,綠色項目的主持者之一James Gosling認為因特網與Java的一些特性不謀而合,利用Java Applet在瀏覽器上展現互動性的媒體給人們的視覺感官帶來了一次革命性的顛覆,于是他們的團隊仿照Mosaic開發了一個以Java技術為基礎的瀏覽器,吸引了很多人的注意。在1995年5月23日JDK 1.0a2版本正式對外發表,從此Java在因特網的世界中逐漸流行起來,直至今日。
Java是一個簡單的面向對象程序語言,用Java編寫的程序在不同的平臺間具有更高的可移植性,對于“一次編寫,到處運行”提供了更高的可能性。隨著應用范圍越來越廣,Java演化出3個不同領域的應用平臺:J2SE、J2EE、J2ME。
二、JAVA語言的特點
(一)平臺獨立性
眾所周知,將程序移植到不同的平臺是一項相當繁雜的工作。而Java被設計為一種可輕松地移植到任何計算機或操作系統上的語言,它的可移植性是通過將Java代碼編譯為字節碼(.class文件)來實現的。Java虛擬機(JVM)是每一個運行Java程序的計算機都需要的一個較小的程序,JVM可在多種處理器上運行且不局限于某一個操作系統。
在Java中,到庫的鏈接被推遲到程序實際運行才發生(即動態鏈接),這讓Java字節碼不受庫軟件的阻礙從而提高速度;當Java代碼到達一個站點時,將被鏈接到該站點專有的Java庫中;當任意一個庫升級時程序將自動獲得升級后的最新版本。Java的另一個針對可移植性的特性是Java的數據類型在大小上被定義為與單個機器無關,這使得Java語言編譯的程序無論在哪里執行,程序員都可以明確它的行為。
(二)簡單性
Java語言的簡單性主要體現在以下三個方面:
(1)Java的編程風格與C++非常類似,對于接觸過C++的用戶可以借助已學知識快速掌握Java;
(2)Java與C++相比更易操作,它摒棄了C++中容易出錯的地方,如goto語句、指針和內存管理;
(3)Java擁有豐富的類庫,便于開發者直接使用(JDK以及各軟件商提供的Java API)。
(三)面向對象
面向對象的特性是Java最重要的特性之一,Java語言的設計完全是面向對象的,它不支持類似C語言那樣的面向過程的程序設計技術。Java的面向對象的特性類似于SmallTalk,支持靜態和動態風格的代碼繼承及重用。
Java面向對象的特性讓用戶可以設計出可重用的組件,也可以直接使用別人編好的Java組件,使開發出來的軟件更具彈性且易維護。
(四)動態性
Java的動態性是其面向對象設計方法的擴展。它允許程序動態地裝入運行過程中所需要的類,這點是C++語言進行面向對象程序設計所無法實現的。Java編譯器不是把對實例變量和成員函數的引用編譯為數值引用,而是將符號引用信息在字節代碼中保存下來傳遞給解釋器,再由解釋器在完成動態連接類后,將符號引用信息轉換為數值偏移量。這樣就實現了一個存儲器生成的對象是在運行時由解釋器來確定,而不是在編譯過程中決定。
(五)安全性
安全性對用戶來講是舉足輕重的,Java為用戶提供了一些必要的機制從而保護用戶免受惡意程序的侵害,這也是Java的一個主要設計目標,具體有以下7個方面:
(1)Java語言本身。Java不允許使用指針、Java是強類型語言、Java語言是完全面向對象的、Java語言禁止程序員訪問未經初始化的變量;
(2)驗證程序。當Java字節碼的新片段到達并執行的時候,驗證程序對它進行檢查以確保它是安全的;
(3)類裝載器。防止惡意程序偽裝成標準的Java類,裝載器在不同的包,尤其是在本地內置類和其他類之間會進行仔細的區分;
(4)Java虛擬機。讓Java程序在沙箱中運行;
(5)數組。JVM會檢查數組下標是否越界,有效防止了惡意程序訪問數組中不存在的元素;
(6)垃圾收集。Java的自動垃圾收集功能避免了兩次釋放同一內存、繼續使用已釋放內存、未釋放已不再用內存等引起的問題;
(7)文件系統。用戶可以評估訪問的Applet的可靠性并決定它的訪問權限。
三、JAVA相關技術
(一)JAVA Annotation技術
Java Annotation技術是一種將編譯語言中的類、變量、屬性以及參數進行連接,并提供整合機制的特殊的元數據法。Annotation技術實現了用戶可以根據元素的屬性和特點來進行分類并改變其行為以便于控制,當加入Java代碼中后對代碼的執行沒有影響,同時起到注釋的作用。其中JavaBeans技術較為重要,該技術構成的控件控制體系獨立于開發平臺之外,任何軟件行為都要經過其內部的安全策略進行認證檢查,從而達到向軟件程序提供更加安全、更加高效、更加一致的控件管理控制服務。
(二)JAVA Remote Method Invocation技術
Java中的遠程調用方法技術(Remote Method Invocation)是以Java為中心的分布式對象通信模型。利用RMI包和基礎結構,基于RMI的Java客戶機可以遠程調用基于RMI的Java服務器對象方法。RMI可采用自然、直接和功能全面的方式為用戶提供分布式計算技術,從而以不斷遞增和無縫的方式更好的服務于Java系統。RMI有可將完整的對象作為參數和返回值進行傳遞、可將類實現程序從客戶機移動到服務器、能讓Java遠程服務程序和訪問這些服務程序的Java客戶程序的編寫工作變得輕松而簡單、可通過Java的本機方法接口JNI與現有系統進行進行交互等優勢。
四、JAVA編譯平臺的優勢分析
Java語言是一種特殊的高級語言,它既具有編譯型語言的特征,又具有解釋型語言的特征。因為Java語言編寫的程序先要經過編譯,但不會生成特定平臺的機器碼,而是生成一種與平臺無關的字節碼(.class文件),而這種字節碼并不是可執行的,必須通過Java編譯器來編譯執行。Java語言里完成解釋執行字節碼文件的是Java虛擬機(JVM)。JVM是可執行Java字節碼文件的虛擬計算機。Java編譯平臺的優勢之一是跨平臺,所有平臺上的JVM向編譯器提供相同的編程接口,相同的編程接口能夠實現識別字節碼,所以通過JVM這個轉換器實現了跨平臺這一重要特性;其次是提高效率,即在一些虛擬機的實現中,還會將虛擬機代碼轉換成特定系統的機器碼執行。
五、結束語
隨著計算機技術的進一步發展,對編程語言的要求也將越來越高。在這種趨勢下,Java語言在計算機軟件開發中得到了廣泛的應用,說明在計算機軟件開發工作的編程技術中,Java是一種合適的、合理的、高效的編程技術。Java語言有著平臺獨立、簡單易用的特點,相較其他語言有更大的優勢,相信會緊跟著計算機技術的腳步發展。近年來移動互聯網的迅速發展刺激了以Java語言為代表的軟件開發(如:Android),讓Java語言從PC機市場擴展到了手機市場,這無疑帶給了Java語言以更廣闊的平臺。相信在以后的發展中,Java語言會在現有的基礎上得到更大的發展,提供更多、更可靠地功能支持。
參考文獻:
[1]良葛格.JavaJDK5.0學習筆記[M].北京:清華大學出版社,2006:389-404.
[2]湯一平.Java語言程序設計[M].北京:科學出版社,2006:46-48.
[3](英)貝爾(Bell,D.),(英)帕爾(Parr,M.)著,鄢愛蘭等譯.Java程序設計[M].北京:中國水利水電出版社,2006:351-355.
[4]閻菲.Java程序設計教程[M].北京:中國水利水電出版社,2004:1-6.
[5](美)佩龍(Perrone,P.J)等著,劉文紅等譯.J2EE開發使用手冊[M].北京:電子工業出版社,2004:238-270.
[作者簡介]李貴鳳(1994-),女,苗族,貴州遵義人,本科,在校學生,計算機科學與技術(信息技術及應用)專業。