Javaは「プログラミング言語としての仕様」と「プログラムを実行する為のプラットフォーム」と言う二つ側面を持つ。Javaは通用のプログラミング言語だが、C++などと異なり、言語使用だけではなく記述 したプログラムを実行する為に必要なプラットフォームを明確に規定している。Javaが一大ブームを巻き起こした理由は、プラットフォームとしての側面によるところが大きい。Javaプログラムを実行するのに必要な環境さえ用意すれば、JavaはWindowsやMacOS、UNIXなどあらゆるOSで動作する。
Javaのパフォーマンスを向上する手法の一つに、JIT(just-in-time)コンパイラと呼ぶJava実行環境の高速化がある。このネイティブ・コードをキャッシュに入れておき、再び実行した場合にはネイティブ・コードを直接実行する仕組みである。このため、2回目以降の実行が高速になる。Netscape Navigator3.0以降やInternet Explorer3.0以降は、JITコンパイラを実装している。
SunはHotSpotと呼ぶ次世代のJava VMの開発も進めている。C++をコンパイルした場合と同等の性能を実現するという。HotSpotはプログラム実行時にプログラムの挙動を解析して処理のボトルネック(hot spot)を見つけ、最適買化を施す。ネイティブ・コードに変換するだけでなく、多くの処理時間を費やしているメソッドをインライン化する。同時にガーべジ・コレクションの最適化も進める。HotSpotは98年末に製品版を提供する予定です。
98年3月末に開催された第3回JavaOneでは、Javaの速度不足の問題が解決に向けて前進していることが明らかになった。この時の発表によると、JDK1.2の性能はインタプリタでJDK1.0.2のおよそ2−2.5倍程度、Internet Explorer4.0と比べても1.5−2倍程度パフォーマンスが向上するという。
また、Javaのソース・コードからネイティブ・コードを生成するネイティブ・コンパイラもある(バイトコードからネイティブ・コードを生成する製品もある)。この場合のコンパイラは、C/C++などのコンパイラと同様の動きをする。コンパイル済みのモジュールはネイティブ・コードなので、バイトコードより高速に動作するが、特定のプラットフォームに依存することになる。
Sunはバイトコードを高速に動作させるJava専用の処理チップも開発している。すでに他社にライセンス がはじまっているにがpicoJavaである。これはCPUのコア部分のみの設計仕様である。富士通、NEC、IBM、韓国LG Semicon社、米Rockwell Collions社がライセンスを受けている。このほかSunは、micoJava というpicoJavaをベースにして入出力制御機構などを付加したプロセサを開発している。