Java言語のインタフェース
Java言語では定数および抽象メソッドのみを持った型を作り出す、インタフェースという機能があります。
インタフェースの定義
Java言語ではキーワード「interface」を使用して以下のようにクラスを定義します。
interface インタフェース名 { 定数および抽象メソッドの定義 }
インタフェースを実装したクラスを定義するにはキーワード「implements」を使用します。
class クラス名 implements インタフェース名 { 抽象メソッドのオーバーライド }
インタフェースに定義できるメンバは定数および抽象メソッドのみになります。
そのため宣言したメソッド・プロパティは暗黙的に public abstract になります。