魔方格魔方格合作機構> 保定培訓學校>保定競秀區(qū)達內IT培訓
保定競秀區(qū)達內IT培訓
全國統(tǒng)一學習專線 8:30-21:00
位置:魔方格 > 計算機>Java開發(fā)> Java開發(fā)語言有哪些特點  正文

Java開發(fā)語言有哪些特點

發(fā)布時間:2022-02-11 10:00:33來源:魔方格

Java語言是適用于分布式計算環(huán)境的面向對象編程語言,它雖類似C和C++,但比C++簡單,忽略了許多為提高計算效率,初學者較難掌握的程序語言特性。那么,Java開發(fā)語言有哪些特點?

Java語言主要有以下特點:

1.強類型

Java語言是一種強類型語言,強類型能約束程序員必須遵守更多的編程規(guī)定,也能讓編譯器檢測出程序中盡可能多的錯誤。

2.編譯和解釋

Java語言是一種編程語言,用Java語言編寫的源程序在計算機上運行需經(jīng)過編譯和解釋執(zhí)行兩個嚴格區(qū)分的階段。Java語言的編譯程序先將Java源程序翻譯成機器無關的字節(jié)碼(bytecode),不是通常的編譯程序將源程序翻譯成計算機的機器代碼。運行時,Java的運行系統(tǒng)和鏈接需要執(zhí)行的類,并作必要的優(yōu)化后,解釋執(zhí)行字節(jié)碼程序。

3.自動無用內存回收功能

Java語言具有自動無用內存回收功能,程序可以按需使用內存,但不需要對無用內存顯式地撤銷分配。系統(tǒng)有一個垃圾收集器(garbage collector),自動收集程序不再使用的內存。這樣,能避免顯式的撤銷分配所引起的安全問題。Java語言不再含有任何不安全的語言成分。例如,沒有指針,數(shù)組元素都要檢查下標是否越界。

4.面向對象

面向對象是程序員編寫大型程序、有效控制程序復雜性的重要手段。Java語言在面向對象方面,比C++更“純”,它的所有數(shù)據(jù)類型,包括布爾類型、整形、字符型等,都有相應的類,程序可完全基于對象編寫。

面向對象語言主要有封裝性、繼承性和多態(tài)性三個特點。封裝就是將實現(xiàn)細節(jié)隱藏起來,只給出如何使用的信息。數(shù)據(jù)及數(shù)據(jù)上的操作用類封裝,對象是類的實例,外界使用對象中的數(shù)據(jù)及可用的操作受到一定的限制。繼承體現(xiàn)眾多的一種層次對象的特性,下一層的類可從上一層的類繼承定義,從上一層類派生的類的對象能繼承上一層對象的特性,同時可以改變和擴充一些特性,以適應其自身的特點。多態(tài)性的意義主要體現(xiàn)在邏輯上相同的不同層次上的操作,使用相同的操作名,根據(jù)具體對象,能自動選擇對應的操作。Java語言很實用地實現(xiàn)了這三種特性。

5.與平臺無關

與平臺無關是對程序可移植性較直接較有效的支持。Java語言的設計者在設計時重點考慮了Java程序的可移植性,采用多種機制來增加可移植性,其中較主要的是定義了一種虛擬機(virtual machine),以及虛擬機使用的java字節(jié)碼。在任何平臺上,Java源程序被Java編譯器編譯成虛擬機能夠識別的字節(jié)碼。這樣,只要有Java虛擬機的平臺,就能解釋執(zhí)行java字節(jié)碼程序,從而實現(xiàn)Java與平臺無關。另外,Java語言還采用基于國際標準的數(shù)據(jù)類

在任何平臺上,同上種數(shù)據(jù)類型是一致的。例如,用int標識32位二進制位(bit)整型數(shù)據(jù),那么無論在哪一臺計算機上,Java的int數(shù)據(jù)都是32位整數(shù)。相反,C語言會隨著硬軟件平臺的改變,用int標識的整數(shù)位數(shù)也可能不全相同。

Java語言提高可移植性的代價是降低程序的執(zhí)行效率。出于java語言也是一種解釋執(zhí)行的語言,Java程序的執(zhí)行速度與C程序的執(zhí)行速度有較大的差別。不過,為了盡量彌補執(zhí)行效率低的缺陷,java的字節(jié)碼在設計上非常接近現(xiàn)代計算機的機器碼,這有助于提高解釋執(zhí)行的速度。

6.安全性

Java是在網(wǎng)絡環(huán)境中使用的編程語言,必須考慮安全性問題,主要有以下兩個方面:設計的安全防范:Java語言沒有指針,避免程序因為指針使用不當,訪問不應該訪問的內存空間;提供數(shù)組元素上標檢測機制,禁止程序越界訪問內存;提供內存自動回收機制,避免程序遺漏或重復釋放內存。

運行安全檢查:為了防止字節(jié)碼程序可能被非法改動,解釋執(zhí)行前,先對字節(jié)碼程序作檢查,防止網(wǎng)絡“黑客”對字節(jié)碼程序已作了惡意改動,達到破壞系統(tǒng)的目的。較后,瀏覽器限制下載的小應用程序不允許訪問本地文件,避免小應用程序破壞本地文件。

7.分布式計算

Java語言支持客戶機/服務器計算模式。Java程序能利用URL對象,能訪問網(wǎng)絡上的對象,如同訪問本地的文件一樣,實現(xiàn)數(shù)據(jù)分布。另外,Java的客戶機/服務器模式也可以把計算從服務器分散到客戶機端,實現(xiàn)操作分布。

8.多線程

線程是比進程更小的一種可并發(fā)執(zhí)行的單位,每個進程都有自己獨立的內存空間和其他資源,當進程切換時需要進行數(shù)據(jù)和資源的保護與恢復。若干協(xié)同工作的線程可以共享內存空間和資源,線程切換不需要數(shù)據(jù)的保護與恢復。

Java的運行環(huán)境采用多線程實現(xiàn),可以利用系統(tǒng)的空閑時間執(zhí)行諸如內存回收等操作;Java語言提供語言級多線程支持,用Java語言能直接編寫多線程程序。

相關內容: Java開發(fā) Java開發(fā)語言 Java開發(fā)語言特點

相關文章
最新文章
相關熱詞