Javascript和Java語(yǔ)言有什么關(guān)系??jī)煞N語(yǔ)言間的異同比較
雖然Javascript與Java有緊密的聯(lián)系,但卻是兩個(gè)公司開(kāi)發(fā)的不同的兩個(gè)產(chǎn)品。Java是Sun公司推出的新一代面向?qū)ο蟮某绦蛟O(shè)計(jì)語(yǔ)言。特別適合于Internet應(yīng)用程序開(kāi)發(fā);而Javascript是Sun與Netscape公司聯(lián)合推出的產(chǎn)品,是為了擴(kuò)展Netscape Navigator功能而開(kāi)發(fā)的一種可以嵌入Web頁(yè)面中的基于對(duì)象和事件驅(qū)動(dòng)的解釋性語(yǔ)言。且它的前身是Live Script,而Java的前身是Oak語(yǔ)言。下面就對(duì)兩種語(yǔ)言間的異同作如下比較:
(1)基于對(duì)象和面向?qū)ο?/strong>
Java是一種真正地面向?qū)ο蟮恼Z(yǔ)言,即使是開(kāi)發(fā)簡(jiǎn)單的程序,也必須設(shè)計(jì)對(duì)象。Javascript是一種腳本語(yǔ)言,它可以用來(lái)制作與網(wǎng)絡(luò)無(wú)關(guān)的,實(shí)現(xiàn)與用戶交互的復(fù)雜軟件。它是一種基于對(duì)象(Object Based)和事件驅(qū)動(dòng)(Event Driver)的編程語(yǔ)言。因而它本身提供了非常豐富的內(nèi)部對(duì)象供設(shè)計(jì)人員使用。
(2)解釋和編譯
兩種語(yǔ)言在其瀏覽器中所執(zhí)行的方式不一樣。Java的源代碼在傳遞到客戶端執(zhí)行之前,必須經(jīng)過(guò)編譯,因而在客戶端上必須有運(yùn)行于相應(yīng)平臺(tái)之上的**器或解釋器。它可以通過(guò)編譯器或解釋器實(shí)現(xiàn)獨(dú)立于某個(gè)特定平臺(tái)而不受編譯代碼的束縛。Javascript是一種解釋件編程語(yǔ)言,其源代碼在發(fā)往客戶端執(zhí)行之前不需經(jīng)過(guò)編譯,而是將文本格式的字符代碼發(fā)送到客戶端由瀏覽器解釋執(zhí)行。
(3)強(qiáng)變量和弱變量
兩種語(yǔ)言所采用的變量是不一樣的。Java采用強(qiáng)類型變量,即所有變量在編譯之前必須作聲明。如
Integer x; String y; x=1234; x=4321;
其中x=1234說(shuō)明是一個(gè)整數(shù),Y=4321說(shuō)明是一個(gè)字符串。
JavaScript中,采用弱類型,即變量在位用前不需作聲明,而由解釋器在運(yùn)行時(shí)檢查其數(shù)據(jù)類型,如
x=1234; y="4321";
前者說(shuō)明x為其數(shù)值型變量,而后者說(shuō)明y為字符型變量。
(4)代碼格式不一樣
Java是一種與HIML無(wú)關(guān)的格式,必須通過(guò)像HTML中引用外媒體那樣進(jìn)行裝載,其代碼以字節(jié)代碼的形式保存在獨(dú)立的文檔中。JavaScript的代碼是一種文本字符格式,可以直接嵌入HTML文檔中,并且可動(dòng)態(tài)裝載。編寫HTML文檔就像編輯文本文件一樣方便。
(5)嵌入方式不一樣
在HTML文檔中,兩種編程語(yǔ)言的標(biāo)識(shí)不同,JavaScript使用“<Script Language="JavaScript">”來(lái)標(biāo)識(shí),而Java使用“<applet>...</applet>”來(lái)標(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)編譯則無(wú)法實(shí)現(xiàn)對(duì)象引用的檢查。
JavaScript是被嵌入在HTML幾中的,并成為了HTML文檔的一部分。
以上所述是小編給大家介紹的Javascript和Java語(yǔ)言有什么關(guān)系??jī)煞N語(yǔ)言間的異同比較,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Java中Cookie和Session詳解及區(qū)別總結(jié)
這篇文章主要介紹了Java中Cookie和Session詳解,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-06-06Java并發(fā)J.U.C并發(fā)容器類list set queue
這篇文章主要為大家介紹了Java并發(fā),J.U.C并發(fā)容器類list set queue,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-06-06java開(kāi)發(fā)環(huán)境的完整搭建過(guò)程
這篇文章主要給大家介紹了關(guān)于java開(kāi)發(fā)環(huán)境的完整搭建過(guò)程,文中介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-02-02Java實(shí)戰(zhàn)個(gè)人博客系統(tǒng)的實(shí)現(xiàn)流程
讀萬(wàn)卷書(shū)不如行萬(wàn)里路,只學(xué)書(shū)上的理論是遠(yuǎn)遠(yuǎn)不夠的,只有在實(shí)戰(zhàn)中才能獲得能力的提升,本篇文章手把手帶你用java+springboot+mybatis+redis+vue+elementui+Mysql實(shí)現(xiàn)一個(gè)個(gè)人博客系統(tǒng),大家可以在過(guò)程中查缺補(bǔ)漏,提升水平2022-01-01Mybatis CURD及模糊查詢功能的實(shí)現(xiàn)
這篇文章主要介紹了Mybatis CURD及模糊查詢功能的實(shí)現(xiàn),有查詢刪除,插入,更新功能,通過(guò)實(shí)例代碼講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-06-06Java中List<T> Map與Map List<T>的區(qū)別小結(jié)
本文主要介紹了Java中List<T> Map與Map List<T>的區(qū)別小結(jié),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-08-08Spring boot + mybatis + Vue.js 
這篇文章主要介紹了Spring boot + mybatis + Vue.js + ElementUI 實(shí)現(xiàn)數(shù)據(jù)的增刪改查實(shí)例代碼(二),非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-05-05