跨平台的程式語言 / Write once, run any where
使用Java所撰寫出來的程式之所以能夠在多種平台執行,是因為Java程式不同與其他程式語言,其並非是編譯成所在平台的機器語言後再執行,而是採先編譯成一個〝位元碼 (byte code)〞,之後才於裝有Java虛擬機器(Java Virtual Machine),JVM上的硬體平台去執行,而這也就是Java所開發之程式能夠跨平台的主要原因。

垃圾收集 / Garbage Collection
早期的程式設計師,可能一不小心就寫出會當機的程式,而常發生的原因是記憶體配置的失誤;而在現今如果使用 Java,情況可能就大不相同了。Java的程式設計師雖然仍需要主動配置記憶體,但此記憶體一旦不再使用時就會自動釋放,此即垃圾收集(garbage collection)。垃圾收集機制使得寫程式時輕鬆許多,雖然因此在執行效率上會些微變差, 但這種因垃圾收集機制而產生的執行效率影響,是輕微得讓您不易感覺到的。

例外處理機制 / Exceptions
不管是什麼程式語言,都可以輕易地寫出很糟糕的程式,但是使用 Java 想寫出很糟糕的程式就不容易了。原因之一是垃圾收集,原因之二是「例外處理機制」。一個好的程式開發者,其所撰寫出的程式,應該要能在意外狀況發生時程式依然能夠正常執行,而Java即具有這樣的特性。Java會要求撰寫者,事先設想好於執行程式時有可能遇到之問題的因應方法。Java 的method 會通知程式出狀況,這是相當好的機制,同時也讓程式更為穩固。