一.Java是目前使用最為廣泛的網(wǎng)絡(luò)編程語言之一。
它具有簡單,面向?qū)ο?,穩(wěn)定,與平臺無關(guān),解釋型,多線程,動態(tài)等特點。
二、簡單
Java 語言簡單是指這門語言既易學(xué)有好用。不要將簡單誤解為這門語言很干癟。如果你學(xué)習(xí)過 C++語言,你會感覺 Java很眼熟,因為 Java中許多基本語句的語法和 C++一樣,像常用的循環(huán)語句,控制語句等和 C++幾乎一樣,但不要誤解為 Java 是 C++的增強版,Java 和 C++是兩種完全不同的語言,他們各有各的優(yōu)勢,將會長期并存下去,Java 語言和 C++語言已成為軟件開發(fā)者應(yīng)當(dāng)掌握的語言。如果從語言的簡單性方面看,Java要比 C++簡單,C++中許多容易混淆的概念,或者被Java棄之不用了,或者以一種更清楚更容易理解的方式實現(xiàn),例如,Java不再有指針的概念。
三、面向?qū)ο蠡趯ο蟮木幊谈先说乃季S模式,使人們更容易編寫程序。
在實際生活中,我們每時每刻都與對象在打交道。我們用的鋼筆,騎的自行車,乘的公共汽車等。而我們經(jīng)常見到的卡車,公共汽車,轎車等都會涉及以下幾個重要的物理量可乘載的人數(shù),運行速度,發(fā)動機的功率,耗油量,自重,輪子數(shù)目等。我們也可以把這些功能稱作是他們具有的方法。在現(xiàn)實生活中,我們用這些共有的屬性和功能給出一個概念 機動車類。一個具體的轎車就是機動車類的一個實例 對象 .Java 語言與其它面向?qū)ο笳Z言一樣,引入了類的概念,類是用來創(chuàng)建對象的模板,它包含被創(chuàng)建的對象的狀態(tài)描述和方法的定義。
四、與平臺無關(guān)與平臺無關(guān)是 Java 語言最大的優(yōu)勢。
其它語言編寫的程序面臨的一個主要問題是 操作系統(tǒng)的變化,處理器升級以及核心系統(tǒng)資源的變化,都可能導(dǎo)致程序出現(xiàn)錯誤或無法運行。Java的虛擬機成功地解決了這個問題,Java編寫的程序可以在任何安裝了 Java虛擬機 JVM 在計算機上正確的運行,Sun公司實現(xiàn)了自己的目標(biāo) “一次寫成,處處運行”。
五、解釋型
我們知道C,C++等語言,都是只能對特定的CPU芯片進(jìn)行編譯,生成機器代碼,該代碼的運行就和特定的CUP有關(guān)。同一個程序,如果是解釋執(zhí)行的,那么它的運行速度通常比編譯為可執(zhí)行的機器代碼的運行速度慢一些。但是,對Java來說,二者的差別不太大,Java的字節(jié)碼經(jīng)過仔細(xì)設(shè)計,很容易便能使用JIT 即時編譯方式 編譯技術(shù)將字節(jié)碼直接轉(zhuǎn)化成高性能的本地機器碼,Sun 公司在 Java 2發(fā)行版中提供了這樣一個字節(jié)碼編譯器——JIT(Just In Time),它是Java虛擬機的一部分。Java運行系統(tǒng)在提供JIT的同時仍具有平***立性,因而“高效且跨平臺”對Java來說不再矛盾。如果把 Java 的程序比做“漢語”的話,字節(jié)碼就相當(dāng)于“世界語”,世界語不和具體的“國家”關(guān),只要這個“國家”提供了“翻譯”,就可以再快速地把世界語翻譯成本地語言。
六、多線程
Java 的特點之一就是內(nèi)置對多線程的支持。多線程允許同時完成多個任務(wù)。實際上多線程使人產(chǎn)生多個任務(wù)在同時執(zhí)行的錯覺,因為,目前的計算機的處理器在同一時刻只能執(zhí)行一個線程,但處理器可以在不同的線程之間快速地切換,由于處理器速度非??欤h(yuǎn)遠(yuǎn)超過了人接收信息的速度,所以給人的感覺好象多個任務(wù)在同時執(zhí)行。C++沒有內(nèi)置的多線程機制,因此必須調(diào)用操作系統(tǒng)的多線程功能來進(jìn)行多線程程序的設(shè)計。
七、安全
當(dāng)你準(zhǔn)備從網(wǎng)絡(luò)上下載一個程序時,你最大的擔(dān)心是程序中含有惡意的代碼,比如試圖讀取或刪除本地機上的一些重要文件,甚至該程序是一個病毒程序等。當(dāng)你使用支持Java的瀏覽器時,你可以放心地運行Java的小應(yīng)用程序 Java Applet ,不必?fù)?dān)心病毒的感染和惡意的企圖,Java小應(yīng)用程序?qū)⑾拗圃?Java運行環(huán)境中,不允許它訪問計算機的其它部分。
八、動態(tài)
Java 程序的基本組成單元就是類,有些類是自己編寫的,有一些是從類庫中引入的,而類又是運行時動態(tài)裝載的,這就使得 Java 可以在分布環(huán)境中動態(tài)地維護(hù)程序及類庫,而不像 C++那樣,每當(dāng)其類庫升級之后,相應(yīng)的程序都必須重新修改,編譯。
-
JAVA
+關(guān)注
關(guān)注
19文章
2952瀏覽量
104479 -
C++
+關(guān)注
關(guān)注
21文章
2100瀏覽量
73453
發(fā)布評論請先 登錄
相關(guān)推薦
評論