実行時の環境
- JDK
- 21.0.1
- Eclipse
- 2023 Pleiades All in One
- macOS
- M1 / Sonoma 14.2.1
このコンテンツでは、IT業界で使われるプログラミング言語として不動の地位を築くJavaの学習の始め方を紹介していきます。
「どこから始めればいいかわからない」という人は、ぜひこの手順通りに進めていってみましょう。なお、このコンテンツの手順はmacOSを使っています。Windows版は別途書きますが、手順はすべてmacOSである前提で読み進めてください。
環境(使っているパソコンなど)によって差分が出てしまうこともありますが、そういったときの対応方法も含めて紹介していきます。
Javaの基本知識
Javaは、1995年にサン・マイクロシステムズによってα版がリリースされたプログラミング言語です。(正式版は1996年リリース)2010年にはオラクル社が吸収合併したことによって、現在はJavaの権利をオラクル社が保有しています。
Javaの特徴としては、以下のような点が挙げられます。
- オブジェクト指向
Javaはオブジェクト指向プログラミング(OOP)言語であり、再利用可能なコードを促進し、大規模なプロジェクトをより管理しやすくすることを目的としています。オブジェクト指向の概念には、クラス、オブジェクト、継承、カプセル化、多態性(ポリモーフィズム)などが含まれます。 - 独立したプラットフォーム
Javaのコードは、特定のハードウェアやオペレーティングシステムに依存せず実行されます。"Write Once, Run Anywhere(WORA)"のスローガンのもと、Javaアプリケーションはさまざまな環境で動作します。これは、JVM(Java Virtual Machine)という特別なプログラムがJavaバイトコードを解釈し、実行するためです。 - 堅牢性とセキュリティ
静的型付けを採用しており、実行前に厳格なエラーチェックが行われるため、より信頼性の高いコードを書くことができます。また、メモリ管理の自動化(ガベージコレクション)、例外処理の仕組み、セキュリティマネージャーなど、セキュリティと堅牢性を高めるための機能が多く備わっています。 - マルチスレッド
マルチスレッドプログラミングをサポートしており、複数のスレッドを同時に実行できます。これにより、リアルタイムアプリケーションや高性能なアプリケーションの開発が可能になります。 - 豊富なAPI
データベース接続、ネットワーク操作、ユーザーインターフェイス作成など、さまざまなタスクを簡単に実行できる豊富なAPI(アプリケーションプログラミングインターフェース)が用意されています。また、オープンソースコミュニティによって多くの追加ライブラリやフレームワークが開発されています。 - 幅広い用途
Webアプリケーション、モバイルアプリ(特にAndroid)、デスクトップアプリ、ゲーム、サーバーサイドなど、多岐にわたる開発領域で使用されています。その汎用性と拡張性の高さから、世界中の多くの企業で採用されています。
Javaの学習に必要なツール
Javaを効率的に学ぶためにはいくつかのツールが必要です。
すべて同じもので揃える必要はありませんが、学習環境を揃える上での参考にしてください。
- JDK(Java Development Kit)
JDKはJava開発に必要なソフトウェアで、Javaコンパイラ、Javaランタイム環境、およびJava APIのドキュメントなどを含んでいます。 - IDE(統合開発環境)
コードの記述、デバッグ、テストをサポートするツールです。Eclipse、IntelliJ IDEA、NetBeansなどがJava開発で人気のあるIDEです。今回はEclipseを使います。 - ビルドツール
Apache MavenやGradleなどのビルドツールは、プロジェクトの依存関係管理、ビルドプロセスの自動化、テストの実行などを行います。今回は実務視点でシェアが大きいMavenを使っていきます。
補足1
IDEではなくエディタ(VSCodeなど)を使っても問題ありません。今回はJavaに特化したIDEであるEclipseを使うことで、王道の開発方法をなぞっていきます。
補足2
MavenよりGradleのほうがコンパイル時間が短縮できるなど、数々のメリットがありますが、企業案件で広く使われているこのコンテンツではMavenを使っていきます。
プラスαで使えると良いツール
以下は、チーム開発やさらに深く学習を進める人向けのツールと情報リソースです。
このコンテンツでは紹介しませんが、企業へ就職したり、Javaを使ったプロジェクトへ参加したりする際、参考にしてください。
- バージョン管理システム
Gitのようなバージョン管理システムは、コードの変更履歴を追跡し、協力して開発する際に役立ちます。GitHubやBitbucketなどのプラットフォームでリモートリポジトリをホストできます。 - QAサイトとコミュニティ
Stack Overflow、Reddit、Javaに関するブログ、公式ドキュメント、チュートリアルサイトなど、インターネット上には多くの学習リソースがあります。
Java初心者用ハンズオン
では早速、手を動かしながらJavaを触ってみましょう。
macOSにJDKをインストールし、EclipseとMavenを設定するための基本的な手順を以下に説明します。
JDK(Java Development Kit)インストール
まずは以下のOracle社Webサイトから.dmgファイルをダウンロードします。
M1 Macを使っているため、今回はバージョン20.0.1のARM版を選択します。

ダウンロードしたファイルをダブルクリックして開くと、以下のような画面が出てきますので手順通りに進めます。

ここまで進んだら、ターミナルなどのコマンドプロンプトアプリを使って、以下のコマンドを実行してみましょう。
java --version以下のように、正しくJava実行環境がインストールされたと確認できます。

Eclipseインストール
続いて、IDE(統合開発環境)であるEclipseのインストールです。
以下の公式サイトからダウンロードしましょう。今回は最新版が2023のため、こちらをインストールしていきます。

EclipseのようなIDEは、開発に必要なパッケージが同梱されているためダウンロードに時間がかかります。
以下の画面が出てきたらアプリケーションフォルダにドラッグ・アンド・ドロップします。

以下のような確認画面が出てくる場合があります。その場合は、アプリケーションフォルダからEclipse_2023-12.appを右クリックして「開く」を押します。


Eclipse起動からJavaプロジェクト作成
最初に、以下のようにワークスペースを設定することになります。
デフォルトのworkspaceでも問題ありませんが、自分がわかりやすい場所に設定したい場合は「参照」からお好みで設定してください。

ここからMavenプロジェクトを作成していきます。
本来であればMavenは別途インストールする必要がありますが、今回インストールしたEclipseのPleiades All in OneにはあらかじめMavenがインストールされています。
「Mavenプロジェクトの作成」を押して、出てくる選択肢は以下のように選んでいきます。
最後にグループid、アーティファクトidを入力する画面が出てきます。例として、グループidをcom.sample、アーティファクトidをhellojaveと入力して「完了」を押します。



グループID=プロジェクトの識別用ID
アーティファクトID=プロジェクトの成果物の名前
すると、プロジェクト・エクスプローラーの中にhellojavaプロジェクトが生成されます。

Hello World!してみる
プロジェクトの中身を見てみると、様々なファイルが作られていますが、まずはpom.xmlを確認してみましょう。
ファイル名の上でダブルクリックすると右側の編集画面に表示されます。

せっかくなので動かしてみましょう。
src/main/javaフォルダの中にHelloWorld.javaを作成します。


以下のような最小限のプログラムを書いてみましょう。
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}
続いてこのプロジェクトを実行してみます。プロジェクトを右クリックして「実行」を見ると、Maven Installという項目があるのでクリックしましょう。
最終的にBUILD SUCCESSと表示されたら成功です。

ここまで実行できたら、hellojavaプロジェクトの中にtargetというフォルダが作成され、その中にhellojava-0.0.1-SNAPSHOT.jarというファイルが存在します。
これをターミナルなどのコマンドプロンプトで、以下のように実行することでHello, World!と実行されるのが確認できます。
java -classpath hellojava-0.0.1-SNAPSHOT.jar HelloWorld
デフォルトのワークスペースを使っていたら、cd ~/workspace/hellojava/targetとすれば該当のディレクトリへ移動できます。
ここからの勉強法
今回はJDK v21で開始しましたが、まだ世の中のプロジェクトにはJDK v17を使っているプロジェクトもあります。
基本的に最新版のほうが良いですが、頭の片隅に古いバージョンの場合もあることを入れておいてください。
ここからさらに発展していくには、Javaの文法を覚えることも大切ですが、「なにか作ってみる」ことが何よりも重要です。
選択肢としては「Webアプリ」か「スマートフォンアプリ(Android)」がおすすめです。
Androidアプリ開発はKotlinというプログラミング言語が主流となってきましたが、Javaの勉強のためにアプリ開発するのは良い選択肢です。
JavaにおけるAndroidアプリ開発やWebアプリ開発は、当サイトでも随時掲載予定なので、公開されたらぜひ参考にしてみてください。最初は難しく感じがちですが、慣れてきたら多くのシステムやアプリを開発できるようになって楽しくなってくることでしょう。





