1. 程式人生 > >1.2、Java“白皮書”的關鍵術語

1.2、Java“白皮書”的關鍵術語

能夠 頭文件 其中 高性能 交互 容易出錯 接口 多重 編程語言

Java“白皮書”的關鍵術語

  1、簡單性

  為了便於系統更易於理解,Java在設計的時候盡量可能地接近C++,但是Java提出了C++中許多很少使用、難以理解、易混淆的特性。可以說Java語法是C++語法的一個“純凈”版本。Java中沒有頭文件、指針運算(甚至指針語法)、結構、聯合、操作符重載、虛基類等。

  2、面向對象

  Java是一個完全面向對象的編程語言,它的面向對象特性與C++旗鼓相當。Java與C++的主要不同點在於多重繼承,在Java中,取而代之的是更簡單的接口概念。與C++相比,Java提供了更豐富的運行時自省功能。

  3、分布式

  Java有一個豐富的例程庫,用於處理像HTTP和FTP之類的TCP/IP協議。Java應用程序能夠通過URL打開和訪問網絡上的對象,其便捷程度就好像訪問本地文件一樣。

  4、健壯性

  Java的設計目標之一在於使得Java編寫的程序具有多方面的可靠性。Java投入了大量的精力進行早期的問題檢測、後期動態的(運行時)檢測,並消除了容易出錯的情況,Java和C++最大的不同在於Java采用的指針模型可以消除重寫內存和損壞數據的可能性。Java編譯器能夠檢測許多在其他語言中僅在運行時才能檢測出來的問題。

  5、安全性

  Java適用於網絡/分布式環境。為了達到這個目標,在安全方面投入了很大精力。使用Java可以構建防病毒、防篡改的系統。

  從一開始,Java就設計成能夠防範各種攻擊,其中包括:

  1)、運行時堆棧溢出。如蠕蟲和病毒常用的攻擊手段。

  2)、破壞自己的進程空間之外的內存。

  3)、未經授權讀寫文件。

  6、體系結構中立

  編譯器生成一個體系結構中立的目標文件格式(.class字節碼文件),這是一種編譯過的代碼,只要有Java運行時系統,這些變異後的代碼可以在許多處理器上運行。

  7、可移植性

  在Java中,數據類型具有固定的大小,這消除了代碼移植時令人頭痛的主要問題。二進制數據以固定的格式進行存儲和傳輸,消除了字節順序的困擾。字符串是用標準的Unicode格式存儲。另外作為系統組成部分的類庫,也定義了可一致的借口。

  8、解釋性

  Java解釋器可以在任何移植了解釋器的機器上執行Java字節碼。

  9、高性能

  Java字節碼可以(在運行時刻)動態地翻譯成對應運行這個應用的特定CPU的機器碼(及時編譯器)。

  10、多線程

  多線程可以帶來更好的交互響應和實時行為。

  11、動態性

  從各種角度看,Java與C或C++相比更加具有動態性。它能夠適應不斷發展的環境。庫中可以自由地添加新方法和實例變量,而對客戶端卻沒有任何影響。在Java中找出運行時類型信息十分簡單。

  

  

  

  

1.2、Java“白皮書”的關鍵術語