【じゃば】

Java とは?

最終更新:
💡 JVMを通して、プログラムをいろいろなOSへ

静的型付けを持つプログラミング言語。一般的なJava SEの開発では、ソースコードをバイトコードに変換し、JVMで実行する。

📌 このページのポイント
Java:同じバイトコードを複数のOSへHello.java(ソース)コンパイルHello.classバイトコードWindowsJVMmacOSJVMLinuxJVM対応するJVMやライブラリをそろえよう
Java SEの一般的な実行の流れ。JVMがOSやCPUの違いに対応しますが、バージョンや必要なライブラリなどの実行条件も確認します。
ひよこ ひよこ
Javaって、どんな言語?
ペンギン先生 ペンギン先生
プログラムを書くための言語で、クラスを使ってデータや処理をまとめられるよ。Webサービスのサーバー側や業務システムなどに使われる。Javaという名前は言語だけでなく、JVMや標準ライブラリを含む実行基盤を指すこともあるんだ。
ひよこ ひよこ
書いたプログラムは、どう動くの?
ペンギン先生 ペンギン先生
一般的なJava SEの開発では、Hello.javaのようなソースをjavacでコンパイルして、Hello.classというバイトコードに変換するよ。それをJVM(Java仮想マシン)が実行する。JVMが、OSやCPUに合わせて処理を進める役目を持つんだ。
ひよこ ひよこ
同じプログラムなら、どのパソコンでも動く?
ペンギン先生 ペンギン先生
JVMを通すことで、同じバイトコードをWindows・macOS・Linuxなどで動かしやすくなるよ。ただし対応するJavaのバージョン、必要なライブラリ、OS固有の機能などの条件は確認が必要。新しいJava向けのバイトコードを、古いJVMでそのまま実行できるとは限らないんだ。
ひよこ ひよこ
静的型付けって、何がうれしいの?
ペンギン先生 ペンギン先生
たとえば数値を入れる変数に文字列を代入するような、型に合わない使い方をコンパイル時に見つけやすいんだ。Javaは変数や式の型をコンパイル時に確認する。ただし、型が合っていても計算の内容や業務ルールが正しいとは限らないよ。
ひよこ ひよこ
JavaScriptも、Javaの仲間なの?
ペンギン先生 ペンギン先生
名前は似ているけれど別の言語だよ。JavaScriptはブラウザーだけでなくサーバー側でも動くので、使う場所だけで区別するより「言語も実行基盤も別」と覚えよう。Javaを学ぶときはJavaの教材、JavaScriptを学ぶときはJavaScriptの教材を選ぶと迷いにくいんだ。
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「Java」って出てきたら「JVMで動かせるプログラミング言語」と思えばだいたいOK!
📖 おまけ:英語の意味
「Java」 = プログラミング言語と実行基盤の名前
💬 言語としてのJavaと、JVMやAPIなどを含むJavaプラットフォームを区別すると、説明を読みやすくなるよ。

参考資料

← 用語集にもどる