Java とは?

Java とは?

Java は「プログラミング言語」であり、また、「プログラム実行のプラットフォーム」でもあります。

と、さらっと言われてもわかりにくいと思いますので、「プログラミング言語」という部分と 「プログラム実行のプラットフォーム」という面をそれぞれご説明します。

Java はプログラミング言語

Java はプログラミング言語です。

普通の私たちが日常話す言葉に、日本語や英語など、いろんな言葉があるように、コンピュータに命令を書くのにもいろんな言語があります。

コンピュータに命令を書くための言葉、言語を、「プログラミング言語」といいます。Java はそのプログラミング言語の1つです。

C 言語の「ポインタ」のように、柔軟だけれど危険でわかりにくい、といった要素を排除するなどされています。 Java はわかり易い言語仕様で、学習し易いといわれています。

オブジェクト指向のプログラミング言語

さらに Java は「オブジェクト指向」のプログラミング言語である、と言われます。

他のオブジェクト指向言語を習得している方はお分かりと思います。プログラミングが初めて、あるいは、 オブジェクト指向というのは良くわからない、という方はこのサイトで後で説明しますので、そちらをお読みください。

とりあえずここでは、「プログラミング言語はプログラミング言語でも、そのなかでも「オブジェクト指向」ということに特に特徴のある言語だ」ということだけ、 頭にいれておくといいです。

Java はプログラム実行のプラットフォーム

例えば C 言語でプログラムを書いた場合、それを実行する前にコンパイルという処理があります。 この処理はプログラムが動作するオペレーティングシステムやプロセッサに合わせた処理が行われます。

例えば、「Windows のインテルプロセッサの x586 向けのコードにコンパイル」とか 「Linux の AMD 64 ビット向けのコードにコンパイル」 という風になります。

このため、開発したプログラムは OS やプロセッサが変わればその都度、作り直さなければならないのです。 (互換性があるなどして、同じコードが違うプロセッサ、 OS で動くということはありますが、それぞれの実行環境に合わせるのが基本です)

しかし、Java は違います。

Windows, Mac, Linux, Solaris, ... 等に向けてそれぞれの OS やハードウェア向けに、 まず Java 仮想機械 (バーチャルマシン) が用意されます。仮想機械 = バーチャルマシン = Virtual Machine ということで、 これは Java VM と呼ばれます。

これは何かというと、Java VM が、オペレーティングシステムやプロセッサの違いを全て覆い隠して、 Java がひとつの機械のように振舞うのです。

そして、あなたが Java のプログラムを作るときは Java VM 用に作ります。

すると、Java VM はさまざまなオペレーティングシステムやハードウェア用に用意されていますから、 Java VM さえインストールされていれば、あなたが作ったプログラムは OS やハードウェアの違いに関わらずどこでも動くということになります。

Java の開発思想として、「Write Once, Run Anywhere. (一度書いたら、どこでも動く)」 というのがありますが、 これは Java VM があるからこそ達成できることなのです。

ここまでお読みいただき、誠にありがとうございます。SNS 等でこの記事をシェアしていただけますと、大変励みになります。どうぞよろしくお願いします。

© 2024 Java 入門