0.はじめに
本講義では、Java を使って オブジェクト指向プログラミング(OOP)を学びます。OOP は「役割の異なる複数の クラス を組み合わせて、プログラム全体を組み立てる」考え方です。Java をはじめ、現代の多くのプログラミング言語で採用されています。
たとえば、この講義では次のようなプログラムを扱います。
# 書店の購入処理
書店から本を 1 冊購入し、購入できた本のタイトルを表示する。在庫切れの場合はエラーとして伝える。
## 結果
『こころ』を購入しましたpublic class Main { public static void main(String[] args) { BookStore store = new BookStore(); store.add(new Book("こころ", 650, 3)); store.add(new Book("吾輩は猫である", 780, 0));
try { Book book = store.purchase("こころ"); System.out.println("『" + book.getTitle() + "』を購入しました"); } catch (OutOfStockException e) { System.out.println("在庫がありません"); } }}『こころ』を購入しましたこのプログラムでは Book(本)、BookStore(書店)、OutOfStockException(在庫切れエラー)の 3 種類のクラスが登場しています。本講義を終える頃には、こうしたクラスを設計して組み合わせ、プログラムを組み立てられるようになります。
このドキュメントでは、本講義のプログラムを書いて実行するための環境を準備します。
1. 開発環境
Section titled “1. 開発環境”本講義は Java 基礎 の続きで、同じ環境をそのまま使います。
-
作業フォルダーの準備
Java 基礎の作業フォルダーとは別に、本講義用のフォルダーを作ります。
Terminal window mkdir oop-practicecd oop-practiceVS Code のメニューから「ファイル → フォルダーを開く」を選択し、
oop-practiceフォルダーを開きます。 -
クラスファイルの作成
VS Code で新しいファイルを作成し、クラス名と同じ名前で保存します(例:
PersonクラスならPerson.java)。講義ではクラスごとにファイルを分けます。Directoryoop-practice/
- Person.java
- Book.java
- BookStore.java
- Main.java
- …
-
コンパイルと実行
ターミナルで以下のコマンドを実行します。
Terminal window javac *.javajava Mainjavac *.javaでフォルダー内のすべての.javaファイルがコンパイルされ、対応する.classファイルが生成されます。java Mainでmainメソッドを持つMainクラスが実行されます。