[ 通常表示 ]  [ 簡易表示 ]  [ シンプル表示 ]

「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典イメージぴよ画像「分かりそう」で「分からない」でも「分かった」気になれるIT用語辞典

JavaVM

pointこの用語のポイント

pointソフトウェアだよ

pointJavaで作ったプログラムを動かすときに必要だよ

point「一度書けば、どこでも動く」を実現するための切り札だよ

スポンサーリンク

簡単に書くよ

JavaVMとは

Javaで作ったプログラムとコンピュータの通訳。
もう少し真面目に書くと

Javaの「一度書けば、どこでも動く」の思想を実現するための切り札で、Javaのプログラムを動かすためのソフトウェア
です。

image piyo

詳しく書くよ

※このページの説明は「Java仮想マシン」や「JVM」の説明と同じです。既にそれらの説明をご覧になった方は、読んでも意味が無いと思います。

Javaは「『一度書けば、どこでも動く』の理念で作られたプログラミング言語で『オブジェクト指向』という言葉を流行らせた奴」ね。

Javaには「一度書けば、どこでも動く」な思想があります。
「一度作ったプログラムは、WindowsでもMacでもLinuxでもその他の環境でも動くぜー!」です。

この思想を実現するための切り札で、Javaのプログラムを動かすためのソフトウェアが「JavaVM」です。
「Java VM」のように「Java」と「VM」の間に空白を入れることもあります。
空白の有無についてはどちらでも良いです。
また「Java仮想マシン」と呼ばれることもあります。
「仮想マシン」を英語にすると「Virtual Machine」となり、その頭文字を取って「VM」だから「JavaVM」です。

JavaVMは、その名の通り、仮想マシン(コンピュータの中に作られた、なんちゃってコンピュータ)のイメージですね。
コンピュータの中にJavaで作ったプログラムを動かすための仮想環境を作って、プログラムはその中で動かすことで、本来の環境による差を無視できるようにしよう、な狙いです。

例えば、Javaで作ったプログラムがWindowsのパソコン上で動くとしましょう。
このとき、Javaで作ったプログラムは直接Windowsパソコンさんとやり取りをするわけではありません。
JavaVMとやり取りをします。
そして、JavaVMがWindowsパソコンさんとやり取りをします。

JavaVM

さて、次に、このJavaで作ったプログラムをMacのパソコンに持って行ったとしましょう。
Windowsのパソコンさんで動いていたJavaで作ったプログラムを、Macのパソコンさんで動かします。

このときの流れも、Windowsパソコンさんのときと同じです。
Javaで作ったプログラムはMacなパソコンさんと直接やり取りをするわけではありません。
JavaVMとやり取りをします。
そして、JavaVMがMacなパソコンさんとやり取りをします。

JavaVM2

どんな環境に持って行こうとも、Javaで作ったプログラムがやり取りする相手はJavaVMさんなのです。
Javaで作ったプログラムはJavaVMさんのことさえ考えていればOKです。

あとのことは、JavaVMさん良しなに取り計らってくれます。
相手がWindowsであればWindowsに合うようにやり取りしてくれますし、相手がMacであればMacに合うようにやり取りしてくれます。

つまり、JavaVMさんはJavaで作ったプログラムとコンピュータの通訳です。
プログラムと環境の間に入って、仲を取り持ってくれます。

Javaで作ったプログラムはJavaVMさんとやり取りするだけなので、どんなコンピュータが相手でも自分を変える必要はありません。
例えば、JavaVMさんと日本語でお話するのであれば、ひたすら日本語だけを喋れば良いのです。

JavaVM3

仮に英語しか分からないパソコン上で動かすときも大丈夫です。
JavaVMさんが英語に翻訳してくれます。

JavaVM4

フランス語しか分からないパソコン上で動かすときも大丈夫です。
JavaVMさんがフランス語に翻訳してくれます。

JavaVM5

環境にする差異はJavaVMさんに吸収してもらうので、プログラム自体は「一度書けば、どこでも動く」ってな理屈です。

実際には、環境によって微妙に動きが変わったりしますけどね。

image piyo2

一言でまとめるよ

まぁ「JavaVM」って単語が出てきたら「Javaで作ったプログラムを動かすためのソフトウェアなんだな~」と、お考えください。

一番上に戻るよ
スポンサーリンク