1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

[JAVA入門 #1] Javaとは何か?

1
Last updated at Posted at 2026-01-18

Javaの構造:標準仕様と実装

Javaを理解するためには、まずJavaが**標準仕様(Standard Specification)実装(Implementation)**という二つの要素で構成されていることを知る必要があります。

Java標準仕様 (Java Standard Specification)

Java標準仕様は「Javaはこのように作られるべき」という設計図であり規則書です。建築で言えば建築基準法のような役割ですね。

この標準仕様は**JCP(Java Community Process)**を通じて管理されており、Javaがどんな機能を持つべきか、どう動作すべきかを定義しています。

Java実装 (Java Implementation)

標準仕様が設計図なら、実装は実際に動作するプログラムです。

複数の企業がJava標準仕様に合わせて実際のJavaプログラムを開発していますが、それぞれの実装には独自の長所があります:

  • Oracle JDK: Oracleが提供する公式実装
  • OpenJDK: オープンソースベースの実装
  • Amazon Corretto: AWS環境に最適化された実装
  • Azul Zulu: エンタープライズ環境に特化

重要なのは、これらがすべて同じ標準仕様に従っていることです。したがって、Oracle JDKで開発したプログラムをAmazon Correttoで実行しても問題なく動作します。

また、各社はWindows、macOS、Linuxなど様々なOSで動作するバージョンを提供しています。

Javaプログラムの実行プロセス

Javaプログラムはコンパイル実行の二段階を経ます。

1. 開発者がJavaソースコードを作成 (.javaファイル)
   ↓
2. Javaコンパイラがソースコードをコンパイル
   ↓
3. バイトコードに変換 (.classファイル)
   - JVMで高速実行できるよう最適化
   - 文法エラーの検出
   ↓
4. JVM(Java Virtual Machine)でプログラム実行

バイトコードとは?

バイトコードは、人間が書いたJavaコード(.java)とコンピュータが直接実行する機械語の中間段階です。

この中間段階のおかげで、JavaはOSに依存せず実行できます。JVMさえあれば、同じバイトコードをWindowsでもLinuxでもどこでも実行できるのです。

IDEとJava: IntelliJの役割

実際の開発ではIDE(統合開発環境)を使用します。このシリーズではIntelliJ IDEAを使います。

IntelliJの便利な点:

  • Java内部で簡単にインストール・管理が可能
  • ソースコード作成時の自動補完、エラー表示などをサポート
  • コンパイルと実行を一度に処理

IntelliJで実行ボタンを押すと:

  1. 自動的に .java ファイルを .class ファイルにコンパイル
  2. コンパイルされたバイトコードをJVMで実行

開発者はこのプロセスをいちいち気にせず、コード作成だけに集中できます。

Javaの核心的な強み:OS独立性

Javaの最大の利点の一つは**「Write Once, Run Anywhere」**です。

なぜOS独立的なのか?

一般的なプログラミング言語は、OSごとに異なる方法でコンパイルする必要があります。Windows用、macOS用、Linux用にそれぞれビルドしなければなりません。

しかしJavaは違います:

Javaコード → バイトコード (OS独立)
                ↓
    Windows JVM / macOS JVM / Linux JVM
         (各OSに合わせて実行)

開発者は一度だけコードを書けばよく、OS互換性の問題はJVMが解決します。

実務での活用

実務ではこのようなシナリオが一般的です:

  • 開発環境: WindowsやmacOSでOracle JDKで開発
  • サーバー環境: LinuxでAmazon Correttoで運用

JavaのOS独立性のおかげで、開発したコードをそのままサーバーにデプロイできます。各環境に合ったJVMをインストールするだけです。

もしAWSを使うなら?

  1. 開発: WindowsでIntelliJ + Oracle JDKで開発
  2. デプロイ: AWS LinuxサーバーにAmazon Correttoをインストール
  3. 同じコードが問題なく実行される

まとめ

  • Javaは標準仕様実装で構成される
  • 標準仕様はJCPが管理し、複数の企業がそれぞれ実装を提供
  • Javaプログラムはコンパイル → バイトコード → JVM実行のプロセスを経る
  • IDE(IntelliJ)はこのプロセスを自動化して開発者の利便性を提供
  • OS独立性がJavaの核心的な強み
  • 開発環境と運用環境で異なるJVMを使用できる

本投稿はインフラン キム・ヨンハンのJava講座を学習しながらまとめた内容です。

次回の投稿: 変数とデータ型 (予定)

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?