Java體系結構對平臺無關的支持
1.Java平臺
與系統交互的任務交給Java平臺,Java應用只需要和Java平臺交互即可
2. Java語言
Java基本數據類型的值域和行爲都是由語言自己決定的,與操作系統無關
3. Java class文件
class文件定義了一個特定於java虛擬機的二進制格式。class文件可以在任何平臺創建,被任何平臺的虛擬機裝載並運行
4. 可伸縮性
java針對應用領域推出了不同的API,J2EE J2SE 和J2ME,以適應不同消費型電器市場和嵌入式系統的需求
影響平臺無關性的部署
1. Java平臺的部署
運行Java程序的操作平臺必須具備Java平臺,否則Java程序不能運行
2. Java平臺的版本
選擇正確的java平臺版本,否則會出現不兼容的情況
3. 本地方法
一般來說java程序要獲取本地方法(動態庫)必須經過Java API提供的接口,直接訪問本地方法就有可能破壞平臺無關特性
4. 非標準運行時庫
要確保使用的本地方法在任何地方都是可執行的,否則會破壞平臺無關性
5. 對虛擬機的依賴
編寫非平臺相關的java程序時,要遵循以下兩個原則。首先,不要依賴及時終結來達到程序正確性,其次不要依賴線程的優先級類達到程序的正確性。
所喲java虛擬機都會提供垃圾回收,但是不同平臺的回收機制可能不同。同理,對線程的調度也可能和平臺相關,因此在編寫程序時,線程間的交互協調必須依賴同步而非優先級來實現。
6. 用戶界面風格
這個沒什麼好說的
7. bug和測試
某些問題在一方操作系統上可能不是問題,但在另一方操作系統上可能就是bug和錯誤。
實現平臺無關的七個步驟
1. 選擇程序要運行的主機和設備的集合
2. 選擇足夠好的java平臺版本
3. 選擇一些程序將要運行的java平臺實現
4. 編寫程序,之通過java API 標準運行庫訪問計算機
5. 編寫程序,不依賴垃圾手機起及時終結的正確性,不依賴線程的優先級
6. 設計的用戶界面在所有宿主機上都能正常使用
7. 對所有宿主機進行程序測試