javascript和java有什么區(qū)別
在各種網(wǎng)頁制作技術(shù)論壇中,常常有人詢問javascript與Java有什么區(qū)別,甚至有人誤認(rèn)為javascript就是Java。javascript與Java確實有一定的聯(lián)系,但它們并不像我們想象的那樣聯(lián)系緊密,甚至可以肯定地說它們有很大的區(qū)別。
JavaScript 是對 ECMA 262 語言規(guī)范的一種實現(xiàn)。本教程的目的就是引導(dǎo)您學(xué)習(xí)使用 JavaScript ,所有例子都在 Internet Explorer 5 下通過,本人并沒有在 Netscape 的各版瀏覽器中測試,所以可能有的例子不能在Netscape的瀏覽器中順利運行。
它是一種通過解釋方式來執(zhí)行的語言,語法規(guī)則和C++類似。同時,Java也是一種跨平臺的程序設(shè)計語言。Java非常適合于企業(yè)網(wǎng)絡(luò)和Internet環(huán)境,現(xiàn)在已成為Internet中最受歡迎、最有影響的編程語言之一。
2、javascript是基于對象的,它是一種腳本語言,是一種基于對象和事件驅(qū)動的編程語言,因而它本身提供了非常豐富的內(nèi)部對象供設(shè)計人員使用。而Java是面向?qū)ο蟮?,即Java是一種真正的面向?qū)ο蟮恼Z言,即使是開發(fā)簡單的程序也必須設(shè)計對象。
3、javascript與Java嵌入方式不一樣。
在HTML文檔中,兩種編程語言的標(biāo)識不同,javascript使用……來標(biāo)識,而Java使用來標(biāo)識。
4、javascript與Java在瀏覽器中所執(zhí)行的方式不一樣。
javascript是一種解釋性編程語言,其源代碼在發(fā)往客戶端執(zhí)行之前不需經(jīng)過編譯,而是將文本格式的字符代碼發(fā)送給客戶,即javascript語句本身隨Web頁面一起下載下來,由瀏覽器解釋執(zhí)行。
而Java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過編譯,因而客戶端上必須具有相應(yīng)平臺上的仿真器或解釋器,它可以通過編譯器或解釋器實現(xiàn)獨立于某個特定的平臺編譯代碼。
5、javascript與Java代碼格式不一樣。
javascript的代碼是一種謀咀址 格式,可以直接嵌入HTML文檔中,并且可動態(tài)裝載,編寫HTML文檔就像編輯文本文件一樣方便,其獨立文件的格式為*.js。
Java是一種與HTML無關(guān)的格式,必須通過像HTML中引用外媒體那么進(jìn)行裝載,其代碼以字節(jié)代碼的形式保存在獨立的文檔中,其獨立文件的格式為*.class。
6、javascript與Java所采取的變量是不一樣的。
javascript中的變量聲明采用弱類型,即變量在使用前不需作聲明,而是解釋器在運行時檢查其數(shù)據(jù)類型。Java采用強(qiáng)類型變量檢查,即所有變量在編譯之前必須作聲明。
7、javascript采用動態(tài)聯(lián)編,即javascript的對象引用在運行時進(jìn)行檢查。Java采用靜態(tài)聯(lián)編,即Java的對象引用必須在編譯時的進(jìn)行,以使編譯器能夠?qū)崿F(xiàn)強(qiáng)類型檢查。
8、javascript不直接對文本和圖形進(jìn)行操作,它在Web頁面中與HTML元素組合一起發(fā)揮作用,但它可以控制瀏覽器,讓瀏覽器直接對文本和圖形進(jìn)行處理。而Java則可以直接對文本和圖形進(jìn)行操作。
綜上所述,我們可以發(fā)現(xiàn),javascript與Java雖然都可以應(yīng)用于網(wǎng)頁設(shè)計,但它們的確有太大的區(qū)別,根本就是兩種語言。