我知道關於Java的一件大事就是它與平臺無關,因爲您可以創建Java應用程序並使其在Windows,Linux,Mac等中運行,只要您不需要具體到一個操作系統,並利用圖書館,只要你安裝了適當的操作系統正確解釋事物的JVM ...爲什麼Java平臺在理論和平臺上獨立於實踐?
但是,爲什麼就不能正常的計算機Java程序(如在一個簡單的Hello World在Java,例如Windows或Linux)在手機中的運行方式也是如此,當手機還安裝了特定的JVM來正確解釋事物時?
爲什麼要更改程序的結構在某些情況下,如Android開發,或使用Java ME使應用程序特定的一些普通的手機?
我知道有些功能與操作系統的某些功能有關,例如可能不適用於移動平臺,比如某些與控制檯,輸入法等相關的東西,但這是真的是使事情不兼容的唯一原因?如果是這樣的話,爲什麼只有聲明和初始化一個整型變量的簡單應用程序才能夠在所有具有JVM可用的非移動和移動平臺上運行?
我知道之前已經發布的其他問題,如this,但不關注我的目標在這裏確切點。
你自己回答:有不同的環境 - 並不是所有的環境都是平等的(有些強度和/或約束力都不是很強)。即使是「線索」的想法可能也不會統一傳遞。 Android甚至不運行真正的JVM(它編譯爲它自己的格式)。 – 2010-11-10 00:20:14