概要
1990年代にサン・マイクロシステムズ社によって開発されたプログラミング言語である。C言語やその拡張言語であるObjective-C、派生言語のC++の強い影響を受けている。
「Java VM」という仮想マシン用のバイトコードを生成し、マシンごとにあった実行コードを生成するため移植性が非常に高い。
Java VMの実行環境であるJava Runtime Environment (JRE) は現在主流のOSのほとんどに実装されており、携帯電話や家電製品から大規模なサーバまで、適用範囲が非常に広い。ただし、一部のプラットフォームにしかない機能は、他の機種では使えないので全ての環境で同じJavaプログラムが動くわけではない。2000年代以降、最も広く使われているプログラミング言語である。
また、他の言語でも「Java VM」用のバイトコードを生成すればJavaプラットフォーム上で動かすことが可能である。例えばJava用のRubyの実行環境であるJRubyとか。
なお、名前が似ているJavaScriptはJavaの派生言語ではなく、全くの別物である。
用途
クライアントサイド
アプレットと呼ばれる、ブラウザ上で動くプログラムを実行できる。
サーバーサイド
最近になってJavaサーブレット技術によるサーバーサイドのJavaプログラミングが非常に多く使われるようになってきている。大規模なWeb環境で用いられることが多く、負荷に強い。
デスクトップアプリケーション
当初喧伝されたほど流行らなかったが、今でもたまに見かける。
携帯電話
移植性の高さを生かして主にガラケーやAndroidなどで使われる。