I-13-4. Javaによるオブジェクト指向プログラミング

Javaの大きな特徴であるオブジェクト指向プログラミングについて、その基本的な特徴とメリットを説明する。クラス、オブジェクト、メソッド、コンストラクタなどオブジェクト指向の様々な概念を紹介し、オブジェクト指向による代表的なプログラミング手法を示す。

【学習の要点】

* オブジェクト指向プログラミングとは、データと関数を同時に扱うことによってコードの独立性を強くし、疎結合なプログラムを設計するプログラミング技法である。

* クラスはフィールドとメソッドによって成り立っている、ひな形の概念である。

* オブジェクトとはモノの概念であるクラスに実際の値を与えて作られる、クラスを実体化したものである。

* コンストラクタはオブジェクトを初期化する際に利用する。

図I-13-4. オブジェクトを使用したプログラミング例

【解説】

1) オブジェクト指向プログラミングとは

オブジェクト指向プログラミングとは、データと関数を同時に扱うことによってコードの独立性を強くし、疎結合なプログラムを設計するためのプログラミング技法である。オブジェクト指向により、コードの変更がしやすい柔軟なプログラムを作ることができる。

2) クラスとは

クラスとは、対象とするものに付随させる変数や関数(処理のまとまり)を定義したものである。クラスの変数をフィールド、クラスの関数をメ^ソッドと呼ぶ。また、フィールドやメソッドを、そのクラスのメンバと呼ぶ。例えばPersonというクラスを定義したい場合は以下のように記述する。

例)

class Person {

フィールドの宣言

メソッドの宣言と処理の記述

}

3) オブジェクト(インスタンス)とは

クラスの性質や機能を持った実体のことをオブジェクトという。

オブジェクトを利用するためには、次の処理を行う。

* 定義したクラスを型とする変数を宣言する。

* 定義したクラスのオブジェクトを生成し、宣言した変数にそのオブジェクトを代入する。

例)

Person person1;

person1 = new Person();

オブジェクトは、一つのクラスから複数作ることができる。クラスという型からオブジェクトという実体が複数生成されると考えれば分かりやすい。

4) コンストラクタとは

コンストラクタとは、オブジェクトの生成時に自動実行される処理を指す。Javaでは、クラス定義の中で、クラス名と同じ名前で処理を定義することで、その処理がコンストラクタとして扱われる。