Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職

interface命令

インターフェイスを定義する – interface命令
[modifier] interface name {
definition
}
modifier:修飾子
name:インターフェイス名
definition:メンバーの定義

インターフェイスとは、ある特定の機能を実現するために必要なメソッドのシグニチャ(名前や引数、戻り値の型)だけを定義したものです。処理そのものは持ちません。抽象クラスとも似ていますが、実装を持てない点(※)、クラスが多重継承を禁止されているのに対して、インターフェイスは多重継承が可能である点が異なります。interface命令で定義できます。
たとえば以下は、getAreaメソッドを持つIAreableインターフェイスを定義する例です。

※JavaSE 7以前の場合です。JavaSE 8の場合は後述します。

IAreable.java

package com.example.mynavi.object;

public interface IAreable {
  double getArea();
}

インターフェイスのメンバーは暗黙的にpublic(すべて公開)と見なされますので、慣例的に「public」は省略して表します。

note

インターフェイス自身は、クラスと同じく、継承することもできます。その際は、implementsキーワードではなく、extendsキーワードを利用する点に注意してください。

public interface IAreable extends Serializable { ... }

関連ページ
抽象クラス

継承、インターフェイス
extendsキーワード
interface命令
implementsキーワード
無名クラスを定義する
ラムダ式を利用する

Geekroid-ギークロイド(仮)|ITエンジニアの日常をささいな情報で彩るコラム

ITエンジニアの転職