プラットフォームにある極めて重要なコンポーネントはJavaコンパイラ、ライブラリ、そして仮想マシン仕様で設計されたルールによってJava中間バイトコードを「実行」する実行環境である。Java仮想マシン.クラスライブラリ.最も現代的なOSでは、再利用可能なコードの大きな集まりがプログラマの仕事を容易にした。このコードは一般的にアプリケーションが実行時に呼び出せる動的読込ライブラリのセットとして提供される。Javaプラットフォームは特定のOSに依存しないため、アプリケーションは既存のライブラリのいくつかに頼ることはできない。それどころか、Javaプラットフォームは多くのものを含む標準クラスライブラリの集合を提供し、多くの現代のOSで一般に見つかる同じく再利用可能な機能の多くを含んでいる。JavaクラスライブラリはJavaプラットフォームで三つの意図を役立てる。標準コードライブラリのように、それらはプログラマに、よく知られた、品目リストを保持する、複雑な文字列解析を行うというような共通のタスクを成し遂げる機能セットを提供する。その上、クラスライブラリはハードウェアやOSへの強い依存が普通である仕事を果たす抽象インタフェースを提供する。ネットワーク接続とファイルアクセスのようなタスクはよくプラットフォーム特有の能力に強く依存する。Javaのとライブラリは、時には内部に必要不可欠なネイティブコードを実装しており、時にはそれらのタスクを機能するJavaアプリケーションの標準インタフェースを提供する。最終的に、いくらかの基礎を成すプラットフォームはJavaアプリケーションが期待する特色の全てをサポートするかもしれない。これらの件についていえば、クラスライブラリはどんなに役立つものも使うそれらの特色をエミュレートするか、特別な特色の存在をチェックする一貫した方法提供するかのどちらかを行使できる。言語.Javaという言葉そのものは、通常、Javaプラットフォームで設計されたJavaプログラミング言語を指す。プログラミング言語は一般的に「プラットフォーム」というフレーズの範囲外にあるにもかかわらず、Javaプログラミング言語はJavaプラットフォームの中心部品であると考えられている。Javaの言語と実行はそれゆえ、通例一単位と考えられている。