こんにちは、かつコーチです。
「Javaを学びたいけれど、そもそもJavaが何なのか分からない」という相談をよく受けます。
名前が似ているJavaScriptと混同してしまう人も多く、私自身も学習を始めたころ「JavaScriptを勉強すればJavaも書けるようになる」と思い込んでいました。
実際には文法も用途もまったく別の言語で、この勘違いのせいで最初の1週間を無駄にした経験があります。
この記事では、Javaの正体と「一度書けばどこでも動く」という有名な特徴、そしてオブジェクト指向の考え方を初心者向けに整理します。
Javaとは何か
プログラミング言語としての位置づけ
Javaは1995年にサン・マイクロシステムズ(現Oracle)が発表したプログラミング言語です。
業務システム、Androidアプリ、Webサービスのバックエンドなど、幅広い分野で使われています。
現在はOracleが主導する形で開発が続いており、半年ごとに新しいバージョンがリリースされています。
その中でも長期サポートが約束されたLTS(Long Term Support)版が実務では標準的に使われ、2023年にリリースされたJava 21が現時点の主要なLTS版です。
本ブログのJava入門シリーズも、このJava 21を前提に解説していきます。
「一度書けばどこでも動く」の意味
Javaを語るうえで欠かせないのが「Write Once, Run Anywhere(一度書けばどこでも動く)」という思想です。
この仕組みを支えているのがJVM(Java Virtual Machine)という、Javaプログラムを実行するための仮想環境です。
Javaのコードは、まず.classファイルという中間形式(バイトコード)にコンパイルされます。
このバイトコードは、Windows・Mac・Linuxそれぞれに用意されたJVMの上でそのまま動きます。
つまり「OSごとにコードを書き直す必要がない」というのが、Javaが企業システムで長年選ばれてきた大きな理由の一つです。
Javaとオブジェクト指向
オブジェクト指向とは
オブジェクト指向とは、データとそれを操作する処理をひとまとまりの「モノ(オブジェクト)」として扱う設計の考え方です。
Javaはこのオブジェクト指向を言語の根幹に据えており、書くコードのほとんどが「クラス」という設計図をもとに作られます。
なぜオブジェクト指向が必要なのか
小さなプログラムなら、処理を上から順番に書くだけでも問題ありません。
しかし業務システムのように機能が数百・数千に増えると、処理とデータがあちこちに散らばり、修正のたびに影響範囲を調べるコストが跳ね上がります。
オブジェクト指向を使うと、「ユーザー」「注文」「商品」のように現実の概念ごとにクラスを分けられるため、変更に強く見通しの良いコードになります。
このあたりの具体的な書き方は、シリーズ後半の「オブジェクト指向・クラス設計」で詳しく扱います。
実際にコードを見てみる
Javaの雰囲気をつかむために、最小限のプログラムを見てみましょう。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("こんにちは、Java!");
}
}
public class HelloWorldでクラスを定義し、mainメソッドがプログラムの実行開始地点になります。
実行方法やjavac・javaコマンドの詳しい使い方は、次の記事以降で解説します。
よくあるつまずきポイント
JavaとJavaScriptを同じものだと思ってしまう
❌ Before:名前が似ているから同じ言語だと思い込む
私は学習を始めた当初、「Javaが分かればJavaScriptも分かるはず」と考え、JavaScriptの入門書を先に読み進めていました。
しかし実際にJavaの構文に触れると、型の書き方も実行方法もまったく別物で、知識がほとんど活かせないことに気づき愕然としました。
✅ After:別言語として最初から割り切る
JavaとJavaScriptは、名前の由来こそ似ていますが、設計思想も用途も異なるまったく別の言語です。
Javaはサーバーサイドや業務システム向け、JavaScriptはブラウザ上の動きを作るための言語、と最初に割り切っておくと混乱を避けられます。
応用・一歩先の使い方
Javaは大規模開発向けの言語というイメージが強いですが、Java 21ではrecordやパターンマッチングなど、シンプルに書ける新機能も増えています。
「Javaは冗長で難しい」という昔のイメージだけで敬遠せず、最新のLTS版から学び始めるのがおすすめです。
まとめ
この記事のポイント
- JavaはJVM上で動く、幅広い分野で使われるプログラミング言語
- 「一度書けばどこでも動く」はJVMがOSの違いを吸収する仕組みによって実現される
- Javaはオブジェクト指向を前提とした言語であり、クラス単位で設計を考える
- JavaとJavaScriptは名前が似ているだけで、まったく別の言語
次に読むべき記事
Javaの正体が分かったら、次は実際に手元でコードを書けるようにする環境構築です。
→ 次の記事:JDKのインストールとバージョン管理
タグ: Java, 初心者向け, 入門
