Java OOP
1. Java - OOPとは何か?
OOPは「Object-Oriented Programming(オブジェクト指向プログラミング)」の略称です。
手続き型プログラミングが、データに対して操作を実行する「プロシージャ」や「メソッド」を記述することに重点を置くのに対し、オブジェクト指向プログラミングは、データとメソッドの両方を包含する「オブジェクト」を作成することに重点を置いています。
オブジェクト指向プログラミングには、手続き型プログラミングと比較して以下のような利点があります:
- OOPは実行が速く、記述も容易である
- プログラムに対して明確な構造を提供する
- Javaコードを「DRY(Don't Repeat Yourself)」に保つのに役立ち、メンテナンス、修正、デバッグを容易にする
- 少ないコード量と短い開発期間で、完全な再利用可能アプリケーションを作成できる
ヒント:「DRY(Don't Repeat Yourself / 繰り返すな)」原則とは、コードの重複を減らすための考え方です。アプリケーション内で共通するコードを抽出し、一箇所にまとめて配置することで、同じコードを繰り返すのではなく、それを再利用するように設計すべきであるという教えです。
2. Java - クラスとオブジェクトとは?
クラスとオブジェクトは、オブジェクト指向プログラミングにおける2つの主要な側面です。
クラスとオブジェクトの違いについては、以下の図解を参考にしてください:
| クラス (class) | オブジェクト (objects) |
|---|---|
| フルーツ (Fruit) | リンゴ (Apple), バナナ (Banana), マンゴー (Mango) |
もう一つの例:
| クラス (class) | オブジェクト (objects) |
|---|---|
| 車 (Car) | ボルボ (Volvo), アウディ (Audi), トヨタ (Toyota) |
つまり、クラスとはオブジェクトのための「テンプレート(型)」であり、オブジェクトとはクラスの「インスタンス(実体)」です。
個々のオブジェクトが作成されると、それらはクラスに定義されているすべての変数とメソッドを継承します。
クラスとオブジェクトの詳細については、次のチャプターでさらに深く学んでいきます。