首頁 > Java > java教程 > 主體

java是一種什麼語言?

青灯夜游
發布: 2020-09-10 13:13:06
原創
40221 人瀏覽過

Java是一種高級的面向對象,基於類,並發,安全和通用的電腦程式語言,它是一種廣泛使用的強大技術。

java是一種什麼語言?

java是什麼語言?

Java是一種物件導向程式語言,不僅吸收了C 語言的各種優點,還摒棄了C 裡難以理解的多繼承、指標等概念,因此Java語言具有功能強大和簡單易用兩個特徵。 Java語言作為靜態物件導向程式語言的代表,極佳地實現了物件導向理論,允許程式設計師以優雅的思維方式進行複雜的程式設計。

Java是一個強型別語言,它允許擴充編譯時檢查潛在型別不符合問題的功能。 Java要求明確的方法聲明,它不支援C風格的隱式聲明。

Java可以編寫桌面應用程式、網路應用程式、分散式系統和嵌入式系統應用程式等。

Java的特點:

Java具有簡單性、物件導向、分散式、健全性、安全性、平台獨立與可移植性、多執行緒、動態性等特點;下面我們來具體介紹一下:

1、簡單性

##Java看起來設計得很像C ,但為了使語言小和容易熟悉,設計者們把C 語言中許多可用的特徵去掉了,這些特徵是一般程式設計師很少使用的。例如,Java不支援go to語句,以提供break和continue語句以及異常處理。 Java也剔除了C 的運算子過載(overload)和多繼承特徵,且不使用主文件,免去了預處理程式。因為Java沒有結構,陣列和字串都是對象,所以不需要指針。 Java能夠自動處理物件的引用和間接引用,實現自動的無用單元收集,使用戶不必為儲存管理問題煩惱,能更多的時間和精力花在研發上。

2、物件導向

Java語言提供類別、介面和繼承等物件導向的特性,為了簡單起見,只支援類別之間的單一繼承,但支援介面之間的多繼承,並支援類別與介面之間的實作機制(關鍵字為implements)。 Java語言全面支援動態綁定,而C 語言只對虛函數使用動態綁定。總之,Java語言是一個純的物件導向程式設計語言。

3、分散式

Java設計成支援在網路上應用,它是分散式語言。 Java既支援各種層次的網路連接,也以Socket類別支援可靠的串流(stream)網路連接,所以使用者可以產生分散式的客戶機和伺服器。

網路變成軟體應用的分散運載工具。 Java程式只要寫一次,就可以到處運作。

4、編譯和解釋性

Java編譯程式產生字節碼(byte-code),而不是通常的機器碼。 Java字節碼提供對體系結構中性的目標檔案格式,程式碼設計成可有效傳送程式到多個平台。 Java程式可以在任何實作了Java解釋程式和運行系統(run-time system)的系統上運行。

在一個解釋性的環境中,程式開發的標準「連結」階段大大消失了。如果說Java還有一個連結階段,它只是把新類別裝進環境的過程,它是增量式的、輕量的過程。因此,Java支援快速原型和容易試驗,它將導致快速程式開發。這是一個與傳統的、耗時的「編譯、連結和測試」形成鮮明對比的精巧的開發過程。

5、穩健性

Java原來是用來寫消費性家用電子產品軟體的語言,所以它是被設計成寫高可靠且穩健軟體的。 Java消除了某些程式錯誤,使得用它寫可靠軟體相當容易。

Java的強型別機制、異常處理、垃圾的自動收集等是Java程式健全性的重要保證。對指標的丟棄是Java的明智選擇。 Java的安全檢查機制使得Java更具健壯性。

6、安全性

Java的儲存分配模型是它防禦惡意程式碼的主要方法之一。 Java沒有指針,所以程式設計師不能得到隱藏的內幕和偽造指針去指向記憶體。更重要的是,Java編譯程式不處理儲存安排決策,所以程式設計師不能透過查看聲明去猜測類別的實際儲存安排。編譯的Java程式碼中的儲存引用在執行時由Java解釋程式決定實際儲存位址。

Java運行系統使用字節碼驗證程序來確保裝載到網路上的程式碼不會違反任何Java語言限制。這個安全機制部分包括類別如何從網路上裝載。例如,裝載的類別是放在分開的名字空間而不是局部類,預防惡意的小型應用程式用它自己的版本來取代標準Java類。

7、可移植性

Java使得語言宣告不依賴實作的面向。例如,Java明確說明每個基本資料類型的大小和它的運算行為(這些資料類型由Java語法描述)。

Java環境本身對新的硬體平台和作業系統是可移植的。 Java編譯程式也用Java寫,而Java運行系統用ANSIC語言寫。

8、高效能

Java是先編譯後解釋的語言,所以它不如全編譯性語言快。但有些情況下效能是很要緊的,為了支援這些情況,Java設計者製作了「及時」編譯程序,它能在運行時把Java字節碼翻譯成特定CPU(中央處理器)的機器碼,也就是實現全編譯了。

Java字節碼格式設計時考慮到這些「及時」編譯程式的需要,所以產生機器碼的過程相當簡單,它能產生相當好的程式碼。

9、多執行緒

在Java語言中,執行緒是一種特殊的對象,它必須由Thread類別或其子(孫)類別來建立。通常有兩種方法來建立線程:

1)、使用型構為Thread(Runnable)的建構子類別將一個實作了Runnable介面的物件包裝成一個線程,

2 )、從Thread類別派生出子類別並重寫run方法,使用該子類別建立的物件即為執行緒。值得注意的是Thread類別已經實作了Runnable接口,因此,任何一個執行緒都有它的run方法,而run方法包含了執行緒所要執行的程式碼。線程的活動由一組方法來控制。 Java語言支援多個執行緒的同時執行,並提供多執行緒之間的同步機制(關鍵字為synchronized)。

10、動態性

Java語言的設計目標之一是適應動態變化的環境。 Java程式所需的類別能夠動態地被載入到運行環境,也可以透過網路來載入所需的類別。這也有利於軟體的升級。另外,Java中的類別有一個運行時刻的表示,能進行運行時刻的類型檢查。

11、平台獨立性

Java程式(後綴為java的檔案)在Java平台上被編譯為體系結構中立的字節碼格式(後綴為class的檔案),然後可以在實作這個Java平台的任何系統中運作。這種途徑適合於異質的網路環境和軟體的分發。

相關影片教學推薦:《Java教學

以上是java是一種什麼語言?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!