≪Java≫ インターフェースの注意点
■ インターフェースの宣言
インターフェースの宣言には、「 abstract(抽象)」が暗黙的に付加している。
以下はどちらでも問題なし。
・interface インターフェース名 {}
・abstract interface インターフェース名 {}
■ インターフェースのメソッド宣言
インターフェースのメソッド宣言には、「 public abstract 」が暗黙的に付加している。
以下はどれでも問題なし。
・void メソッド名();
・public void メソッド名();
・abstract void メソッド名();
・public abstract void メソッド名();
・abstract public void メソッド名();
「 public abstract 」が付いているため、
以下はコンパイルエラーとなる。
・static void メソッド名(); ⇒ static は abstract と一緒には付与できない
・final void メソッド名(); ⇒ final が付くと実装時にしなければならない「オーバーライド」できない
・private void メソッド名(); ⇒ アクセス修飾子は public である
・protected void メソッド名(); ⇒ アクセス修飾子は public である
■ インターフェースの定数宣言
インターフェースの定数宣言には、「 public static final 」が暗黙的に付加している。
以下はどれでも問題なし。
・static int 変数名;
・final int 変数名;
・public final int 変数名;
・static final int 変数名;
■ インターフェースの実装時の注意点
① 1つのクラスに複数のインターフェースを実装できる。
⇒ 継承と違って、複数のインターフェースを実装できる。
(言い換えると、全てのインターフェースを全て実装(オーバーライド)しなければならない。
② 一部のインターフェース(メソッド)を実装する場合は、abstract クラスにする。