- 相關(guān)推薦
Javascript和Java語言間的異同比較
雖然Javascript與Java有緊密的聯(lián)系,但卻是兩個(gè)公司開發(fā)的不同的兩個(gè)產(chǎn)品。那么js和java有什么關(guān)系,兩種語言的不同點(diǎn)是什么呢?以下是百分網(wǎng)小編搜索整理的關(guān)于Javascript和Java語言間的異同比較,供參考學(xué)習(xí),感興趣的小伙伴們可以參考一下!想了解更多相關(guān)信息請(qǐng)持續(xù)關(guān)注我們應(yīng)屆畢業(yè)生考試網(wǎng)!
Java是Sun公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語言。特別適合于Internet應(yīng)用程序開發(fā);而Javascript是Sun與Netscape公司聯(lián)合推出的產(chǎn)品,是為了擴(kuò)展Netscape Navigator功能而開發(fā)的一種可以嵌入Web頁面中的基于對(duì)象和事件驅(qū)動(dòng)的解釋性語言。且它的前身是Live Script,而Java的前身是Oak語言。下面就對(duì)兩種語言間的異同作如下比較:
(1)基于對(duì)象和面向?qū)ο?/strong>
Java是一種真正地面向?qū)ο蟮恼Z言,即使是開發(fā)簡(jiǎn)單的程序,也必須設(shè)計(jì)對(duì)象。Javascript是一種腳本語言,它可以用來制作與網(wǎng)絡(luò)無關(guān)的,實(shí)現(xiàn)與用戶交互的復(fù)雜軟件。它是一種基于對(duì)象(Object Based)和事件驅(qū)動(dòng)(Event Driver)的編程語言。因而它本身提供了非常豐富的內(nèi)部對(duì)象供設(shè)計(jì)人員使用。
(2)解釋和編譯
兩種語言在其瀏覽器中所執(zhí)行的方式不一樣。Java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過編譯,因而在客戶端上必須有運(yùn)行于相應(yīng)平臺(tái)之上的**器或解釋器。它可以通過編譯器或解釋器實(shí)現(xiàn)獨(dú)立于某個(gè)特定平臺(tái)而不受編譯代碼的束縛。Javascript是一種解釋件編程語言,其源代碼在發(fā)往客戶端執(zhí)行之前不需經(jīng)過編譯,而是將文本格式的字符代碼發(fā)送到客戶端由瀏覽器解釋執(zhí)行。
(3)強(qiáng)變量和弱變量
兩種語言所采用的變量是不一樣的。Java采用強(qiáng)類型變量,即所有變量在編譯之前必須作聲明。如
Integer x;
String y;
x=1234;
x=4321;
其中x=1234說明是一個(gè)整數(shù),Y=4321說明是一個(gè)字符串。
JavaScript中,采用弱類型,即變量在位用前不需作聲明,而由解釋器在運(yùn)行時(shí)檢查其數(shù)據(jù)類型,如
x=1234;
y="4321";
前者說明x為其數(shù)值型變量,而后者說明y為字符型變量。
(4)代碼格式不一樣
Java是一種與HIML無關(guān)的格式,必須通過像HTML中引用外媒體那樣進(jìn)行裝載,其代碼以字節(jié)代碼的形式保存在獨(dú)立的文檔中。JavaScript的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動(dòng)態(tài)裝載。編寫HTML文檔就像編輯文本文件一樣方便。
(5)嵌入方式不一樣
在HTML文檔中,兩種編程語言的標(biāo)識(shí)不同,JavaScript使用“<Script Language="JavaScript">”來標(biāo)識(shí),而Java使用“<applet>...</applet>”來標(biāo)識(shí)。
(6)靜態(tài)聯(lián)編和動(dòng)態(tài)聯(lián)編
Java采用靜態(tài)聯(lián)編,即Java的對(duì)象引用必須在編譯時(shí)進(jìn)行,以使編譯器能夠?qū)崿F(xiàn)強(qiáng)類型檢查。JavaScript采用動(dòng)態(tài)聯(lián)編,即JavaScript的對(duì)象引用在運(yùn)行時(shí)進(jìn)行檢查,如不經(jīng)編譯則無法實(shí)現(xiàn)對(duì)象引用的檢查。
JavaScript是被嵌入在HTML幾中的,并成為了HTML文檔的一部分。
【Javascript和Java語言間的異同比較】相關(guān)文章:
JavaScript與java語言有何區(qū)別06-21
JAVA語言和PHP語言的比較11-09
override和Java overload的定義及異同點(diǎn)分析09-05
Java中接口和抽象類的異同08-12