Java語(yǔ)言的優(yōu)點(diǎn)
Java語(yǔ)言有什么優(yōu)點(diǎn)呢?下面是小編整理的相關(guān)內容,歡迎閱讀!更多內容請關(guān)注應屆畢業(yè)生考試網(wǎng)!
Java語(yǔ)言最大的優(yōu)點(diǎn)是它的跨平臺性。一次編寫(xiě),到處運行。能始終如一的在任何平臺上運行,使得系統的移植、平臺的遷移變得十分容易。其他優(yōu)點(diǎn)如下。
簡(jiǎn)單易學(xué):Java語(yǔ)言的語(yǔ)法與C語(yǔ)言和C++語(yǔ)言很接近,使得大多數程序員很容易學(xué)習和使用Java。另一方面,Java丟棄了C++中很少使用的、很難理解的、令人迷惑的那些特性,如操作符重載、多繼承、自動(dòng)的強制類(lèi)型轉換。特別地,Java語(yǔ)言不使用指針,并提供了自動(dòng)的廢料收集,使得程序員不必為內存管理而擔憂(yōu),是很容易學(xué)習的。
面向對象:Java語(yǔ)言提供類(lèi)、接口和繼承等原語(yǔ),為了簡(jiǎn)單起見(jiàn),只支持類(lèi)之間的單繼承,但支持接口之間的多繼承,并支持類(lèi)與接口之間的實(shí)現機制(關(guān)鍵字為implement)。Java語(yǔ)言全面支持動(dòng)態(tài)綁定,而C++語(yǔ)言只對虛函數使用動(dòng)態(tài)綁定?傊,Java語(yǔ)言是一個(gè)純的面向對象程序設計語(yǔ)言。
安全性:Java語(yǔ)言不支持指針,只有通過(guò)對象的實(shí)例才能訪(fǎng)問(wèn)內存,使應用更加安全。
可移植性:這種可移植性來(lái)源于體系結構中立性,另外,Java還嚴格規定了各個(gè)基本數據類(lèi)型的長(cháng)度。Java系統本身也具有很強的可移植性,Java編譯器是用Java實(shí)現的,Java的運行環(huán)境是用ANSIC實(shí)現的。
對對象技術(shù)的全面支持和平臺內嵌的API使得Java應用具有無(wú)比的健壯性和可靠性,這也減少了應用系統的維護費用。
【相關(guān)閱讀】JAVA語(yǔ)言的發(fā)展史
1995年,美國Sun Microsystems公司正式向IT業(yè)界推出了java語(yǔ)言,該語(yǔ)言具有安全、跨平臺、面向對象、簡(jiǎn)單、適用于網(wǎng)絡(luò )等顯著(zhù)特點(diǎn),當時(shí)以web為主要形式的互聯(lián)網(wǎng)正在迅猛發(fā)展,java語(yǔ)言的出現迅速引起所有程序員和軟件公司的極大關(guān)注,程序員們紛紛嘗試用java語(yǔ)言編寫(xiě)網(wǎng)絡(luò )應用程序,并利用網(wǎng)絡(luò )把程序發(fā)布到世界各地進(jìn)行運行。包括IBM、Oracle、微軟、Netscape、Apple、SGI等大公司紛紛與Sun Microsystems公司簽訂合同,授權使用java平臺技術(shù)。微軟公司總裁比爾蓋茨先生在經(jīng)過(guò)研究后認為"java語(yǔ)言是長(cháng)時(shí)間以來(lái)最卓越的程序設計語(yǔ)言"。目前,java語(yǔ)言已經(jīng)成為最流行的網(wǎng)絡(luò )編程語(yǔ)言,截止到2001年中,全世界大約有310萬(wàn)java程序員,許多大學(xué)紛紛開(kāi)設java課程,java正逐步成為世界上程序員最多的編程語(yǔ)言。
在經(jīng)歷了以大型機為代表的集中計算模式和以PC機為代表的分散計算模式之后,互聯(lián)網(wǎng)的出現使得計算模式進(jìn)入了網(wǎng)絡(luò )計算時(shí)代。網(wǎng)絡(luò )計算模式的一個(gè)特點(diǎn)是計算機是異構的,即計算機的類(lèi)型和操作系統是不一樣的,例如SUN工作站的硬件是SPARC體系,軟件是UNIX中的Solaris操作系統,而PC機的硬件是INTEL體系,操作系統是windows或者是Linux,因此相應的編程語(yǔ)言基本上只是適用于單機系統,例如COBOL、FORTRAN、C、C++等等;網(wǎng)絡(luò )計算模式的另一個(gè)特點(diǎn)是代碼可以通過(guò)網(wǎng)絡(luò )在各種計算機上進(jìn)行遷移,這就迫切需要一種跨平臺的編程語(yǔ)言,使得用它編寫(xiě)的程序能夠在網(wǎng)絡(luò )中的各種計算機上能夠正常運行,java就是在這種需求下應運而生的。正是因為java語(yǔ)言符合了互聯(lián)網(wǎng)時(shí)代的發(fā)展要求,才使它獲得了巨大的成功。
大家想一想,在PC下用windows編寫(xiě)的程序能夠不做修改就直接拿到UNIX系統上運行嗎?顯然是不可以的,因為程序的執行最終必須轉換成為計算機硬件的機器指令來(lái)執行,專(zhuān)門(mén)為某種計算機硬件和操作系統編寫(xiě)的程序是不能夠直接放到另外的計算機硬件上執行的,至少要做移植工作。要想讓程序能夠在不同的計算機上能夠運行,就要求程序設計語(yǔ)言是能夠跨越各種軟件和硬件平臺的,而java滿(mǎn)足了這一需求。
俗話(huà)說(shuō):"有心栽花花不成,無(wú)心插柳柳成蔭"。Sun公司絕沒(méi)想到本想用于消費電子產(chǎn)品開(kāi)發(fā)的編程語(yǔ)言卻率先在網(wǎng)絡(luò )中得到了廣泛應用,但是也可以說(shuō)是"東方不亮西方亮",正是因為java語(yǔ)言在設計目標上的正確性使得java語(yǔ)言"是金字總會(huì )發(fā)光的"。C語(yǔ)言是面向過(guò)程的語(yǔ)言,也是使用率非常高的語(yǔ)言;而面向對象的思想引入到編程語(yǔ)言之后,C語(yǔ)言就被改造成為面向對象的C++語(yǔ)言,得到了廣泛的應用。但是C++語(yǔ)言必須兼容C語(yǔ)言,因此C++語(yǔ)言是面向過(guò)程和面向對象混合的語(yǔ)言。
java語(yǔ)言產(chǎn)生于C++語(yǔ)言之后,是完全的面向對象的編程語(yǔ)言,充分吸取了C++語(yǔ)言的優(yōu)點(diǎn),采用了程序員所熟悉的C和C++語(yǔ)言的許多語(yǔ)法,同時(shí)又去掉了C語(yǔ)言中指針、內存申請和釋放等影響程序健壯性的部分,可以說(shuō)java語(yǔ)言是站在C++語(yǔ)言這個(gè)"巨人的肩膀上"前進(jìn)的。
java語(yǔ)言的一個(gè)目標是跨平臺,因此采用了解釋執行而不是編譯執行的運行環(huán)境,在執行過(guò)程中根據所在的不同的硬件平臺把程序解釋為當前的機器碼,實(shí)現跨平臺運行。而動(dòng)態(tài)下載程序代碼的機制完全是為了適應網(wǎng)絡(luò )計算的特點(diǎn),程序可以根據需要把代碼實(shí)時(shí)的從服務(wù)器中下載過(guò)來(lái)執行,在此之前還沒(méi)有任何一種語(yǔ)言能夠支持這一點(diǎn)。
java是印尼的一個(gè)小島,盛產(chǎn)咖啡,而程序員往往喜歡喝咖啡,因此取名為java語(yǔ)言?磥(lái),目前java這杯咖啡已經(jīng)飄香在世界各地。
任何事物的產(chǎn)生既有必然的原因也有偶然的因素,java語(yǔ)言的出現也驗證了這一點(diǎn)。1991年,美國Sun Microsystems公司的某個(gè)研究小組為了能夠在消費電子產(chǎn)品上開(kāi)發(fā)應用程序,積極尋找合適的編程語(yǔ)言。消費電子產(chǎn)品種類(lèi)繁多,包括PDA、機頂盒、手機等等,即使是同一類(lèi)消費電子產(chǎn)品所采用的處理芯片和操作系統也不相同,也存在著(zhù)跨平臺的問(wèn)題。當時(shí)最流行的編程語(yǔ)言是C和C++語(yǔ)言,Sun公司的研究人員就考慮是否可以采用C++語(yǔ)言來(lái)編寫(xiě)消費電子產(chǎn)品的應用程序,但是研究表明,對于消費電子產(chǎn)品而言C++語(yǔ)言過(guò)于復雜和龐大,并不適用,安全性也并不令人滿(mǎn)意。于是,Bill Joy先生領(lǐng)導的研究小組就著(zhù)手設計和開(kāi)發(fā)出一種語(yǔ)言,稱(chēng)之為Oak。該語(yǔ)言采用了許多C語(yǔ)言的語(yǔ)法,提高了安全性,并且是面向對象的語(yǔ)言,但是Oak語(yǔ)言在商業(yè)上并未獲得成功。時(shí)間轉到了1995年,互聯(lián)網(wǎng)在世界上蓬勃發(fā)展,Sun公司發(fā)現Oak語(yǔ)言所具有的跨平臺、面向對象、安全性高等特點(diǎn)非常符合互聯(lián)網(wǎng)的需要,于是改進(jìn)了該語(yǔ)言的設計,要達到如下幾個(gè)目標:
◇ 創(chuàng )建一種面向對象的程序設計語(yǔ)言,而不是面向過(guò)程的語(yǔ)言;
◇ 提供一個(gè)解釋執行的程序運行環(huán)境,是程序代碼獨立于平臺;
◇ 吸收C和C++的優(yōu)點(diǎn),使程序員容易掌握;
◇ 去掉C和C++中影響程序健壯性的部分,使程序更安全,例如指針、內存申請和釋放;
◇ 實(shí)現多線(xiàn)程,使得程序能夠同時(shí)執行多個(gè)任務(wù);
◇ 提供動(dòng)態(tài)下載程序代碼的機制;
◇ 提供代碼校驗機制以保證安全性
【Java語(yǔ)言的優(yōu)點(diǎn)】相關(guān)文章:
Java語(yǔ)言?xún)?yōu)點(diǎn)05-06
Java語(yǔ)言的優(yōu)點(diǎn)介紹07-01
淺談Java語(yǔ)言的優(yōu)點(diǎn)06-01
Java語(yǔ)言的優(yōu)點(diǎn)有哪些08-15
Java語(yǔ)言的優(yōu)點(diǎn)是什么08-07
java語(yǔ)言?xún)?yōu)點(diǎn)是什么07-14
java語(yǔ)言?xún)?yōu)點(diǎn)有哪些03-20