陳麗
摘要:本文對Java程序設計語言的優(yōu)勢作一個簡單的分析,同時提出一些本人的觀點。
關鍵詞:程序設計語言Java語言程序開發(fā)
Java的語言功能很精煉,它強調(diào)了面向?qū)ο蟮奶匦裕梢杂脕黹_發(fā)不同種類的軟件,具有支持圖形化的用戶界面、支持網(wǎng)絡通信,支持并發(fā)程序設計以及數(shù)據(jù)庫連接等功能。
1.Java語言的主要特點
Java語言與傳統(tǒng)的程序設計語言相比,主要有以下一些特點:
1.1Java語言是簡單易學易用的
Java語言很簡單,這里說的簡單,是相對于C++而言的,因為它的語法和C++非常相似,但是它摒棄了C++中許多低級、困難、容易混淆、容易出錯或不經(jīng)常使用的功能,例如運算符重載、指針運算、程序的預處理、結(jié)構(gòu)、多重繼承等內(nèi)容,這就有利于有程序設計基礎的人員的學習和使用。Java語言所占的內(nèi)存比較小,這給程序開發(fā)人員提供了一個良好的開發(fā)環(huán)境,另外Java還提供了自動的廢料收集,使程序員不必為內(nèi)存管理而擔憂。
1.2Java語言是面向?qū)ο蟮?/p>
面向?qū)ο笫浅绦騿T編寫大型程序、有效控制程序的復雜手段。所有面向?qū)ο缶幊陶Z言都支持三個概念:封裝、多態(tài)性和繼承,Java也不例外。Java語言的面向?qū)ο蠹夹g具備了封裝性,繼承性等特點,Java語言全面支持動態(tài)綁定,而C++語言只對虛函數(shù)使用動態(tài)綁定,這就讓它的面向?qū)ο蠹夹g更加完善了,程序可以完全基于對象編寫程序。這使得Java的面向?qū)ο蟾凹儭薄?/p>
1.3Java語言是解釋型的
C語言和C++等語言,都是針對CPU芯片進行編譯,生成機器代碼,該代碼的運行就和特定的CPU有關。Java語言的源程序執(zhí)行方法是先經(jīng)過編譯器編譯,再利用解釋器解釋的方式來運行。但是Java語言不針對CPU芯片進行編譯,而是把程序編譯成一種字節(jié)碼格式,然后Java平臺中的Java解釋器對這些字節(jié)碼進行解釋執(zhí)行,執(zhí)行過程中需要的類在鏈接階段被載入到運行環(huán)境中。字節(jié)碼是很接近機器碼的文件,可以在提供了Java虛擬機(JVM)的任何系統(tǒng)上被解釋執(zhí)行。這使得Java程序有了很高的獨立性。
1.4Java是多線程的
在Java語言中,線程是一種特殊的對象,又被稱作輕量進程,比傳統(tǒng)進程更小的可并發(fā)執(zhí)行的單位,他必須由Thread類或其子類來創(chuàng)建。C和C++采用單線程體系結(jié)構(gòu),而Java提供多線程支持。Java在兩個方面支持多線程,一方面,Java環(huán)境本身就是多線程,另一方面,Java語言內(nèi)置多線程控制,可以大大簡化多線程應用程序的開發(fā)。Java的線程還包括一組同步原語,這些原語負責對線程實行并發(fā)控制。利用Java的多線程編程接口,程序開發(fā)人員可以方便的寫出支持多線程的應用程序,提高程序執(zhí)行的效率。但是Java的多線程在一定程度上受運行平臺的限制,如果操作系統(tǒng)本身不支持多線程,那么Java的多線程可能就表現(xiàn)不出來。
2.Java語言的執(zhí)行過程
(1)編寫源文件,使用一個文本編輯器,如Edit或記事本,來編寫源文件。不可使用Word編輯器,因為它含有不可見字符。將編好的源文件保存起來,源文件的擴展名必須是.java。
(2)編譯Java源文件,使用Java編譯器(Javac.exe)編譯源文件得到字節(jié)碼文件。
(3)運行Java程序,Java程序分為兩類——Java應用程序和java小應用程序,Java應用程序必須通過Java編譯器(java.exe)來解釋執(zhí)行器字節(jié)碼文件;java小應用程序必須通過支持Java標準的瀏覽器來解釋執(zhí)行。
3.Java程序開發(fā)中涉及到的主要技術
(1)Java Database Connectivity技術。它的存在能讓不同的數(shù)據(jù)庫的訪問統(tǒng)一化,同時讓數(shù)據(jù)庫之間可以進行相互連接。在具體的編程過程中,通過相應的調(diào)試就能夠讓數(shù)據(jù)庫后臺管理得以實現(xiàn)。另外這種技術為開發(fā)者帶來了一致的接口,為復雜程序的構(gòu)建提供了有利的技術保證。
(2)Java Annotation技術。這種技術讓Java中的一些元素相互關聯(lián)起來,同時還能讓這些元素整合起來。這就能夠讓開發(fā)者根據(jù)不同的元素的不同特點來對這些元素進行合適的分類,同時改變它們的行為。
(3)Java Remote Method Invocation技術。該技術是構(gòu)建分布式程序的基礎,Java中的對象能夠進行相應地調(diào)用,這樣就能夠讓服務器和客戶機相互關聯(lián)起來。在該技術的支持下,可以讓數(shù)據(jù)信息實現(xiàn)高度整合化。另外在分布式調(diào)試的基礎上,可以讓程序的安全性和完整性得到保證。
4.Java語言編程的優(yōu)勢
與平臺無關是Java語言最大的優(yōu)勢,指用Java寫的應用程序不用修改就可在不同的軟硬件平臺上運行。其他語言編寫的程序面臨的一個主要問題是操作系統(tǒng)的變化,處理器升級以及核心系統(tǒng)資源的變化,都可能導致程序出現(xiàn)錯誤或無法運行。Java虛擬機就成功的解決了這個問題,Java語言編寫的程序可以在任何安裝了Java虛擬機JVM的計算機上正確的運行,實現(xiàn)了“一次寫成,處處運行”。
Java語言有著如此廣泛的應用范圍主要是其具備了良好的可移植性。對于一個程序員而言,寫出的程序如果不需要修改就能同時在Windows、MacOS、UNIX等平臺上運行,簡直就是夢寐以求的事。近年來隨著智能手機的興起,越來越多的游戲應運而生,正是Java語言的良好移植性讓手機游戲得到了很好的發(fā)展。
傳統(tǒng)的編程語言難以勝任電子商務系統(tǒng),Java以其強安全性、平臺無關性、硬件結(jié)構(gòu)無關性、語言簡潔同時面向?qū)ο螅诰W(wǎng)絡編程語言中占據(jù)無可比擬的優(yōu)勢,成為實現(xiàn)電子商務系統(tǒng)的首選語言。
很多開發(fā)者會選擇Linux系統(tǒng)作為開發(fā)平臺,這也就給Jave語言帶來了很大的發(fā)揮空間。雖然C++也能進行模塊化的編程,但是它移植性不佳,只能在Windows平臺使用,這就使C++語言受到一定的制約。而Java語言能實現(xiàn)跨平臺編譯,這就讓Java更受開發(fā)者的歡迎。
5.結(jié)語
這些年來智能手機的不斷發(fā)展更是促進了Java軟件的開發(fā),讓Java程序從PC機平臺向手機平臺進行轉(zhuǎn)移。隨著計算機及網(wǎng)絡技術的水平的不斷提高,相信java語音還將有更廣闊的應用空間。
參考文獻:
[1]劉正林.Java技術基礎[M].武漢:華中科技大學出版社,2002.
[2]Eric.Java編程思想[M].機械工業(yè)出版社,2010.