基本機能

知らないと大変

Javaの命令に「interface(インターフェース)」があります。たまにソースコードを読んでいるとみかけますが、これを理解していないとソースコードを読み取れなくなることがあります。そのために、じっくりと「interface(インターフェース)」を紹介します。

メソッド定義を強制させる

インターフェースはクラスに定義しなければいけないメソッドを宣言する命令です。また、定数を定義することもできます。プログラム例をみてみましょう。

9行目でインターフェースRemote_Controller、14行目でinterface Tv を定義しています。

そして、それぞれのインターフェースの中で定義が必要なメソッドの宣言をしています。また、定数の定義も行っています。

クラスでインターフェースを利用するには、19行目のようにクラスの定義で「implements <インターフェース名>,<インターフェース名>・・ 」と記述します。これによりこのクラスでは、インターフェースで宣言されたメソッドを定義しなければいけません。

また、22行目のようにインターフェースで定義した定数を利用できるようになります。

何が違うのか?

思い出された人もいるかもしれません。第2回 クラスを考える 「厳格なabstract」です。「abstract」は宣言したメソッドの定義を強制するものでした。「interface」も宣言したメソッドを定義しなければいけません。この点は同じです。違いは、「abstract」は継承するのでクラスに1つですが、「interface」は複数記述することができます。

使い分けは、「abstract」がクラス構造のテンプレートとして利用し、それ以外は「interface」を使うという感じです。

ここまでが一般的な「interface」の説明ですが、さらに重要なことがありますので、次に紹介します。

タイトルとURLをコピーしました