実際にインターフェイスを書いてみます
[c]
//Lockableインターフェイスの宣言
interface Lockable {
//↓これは抽象メソッド
//abstractキーワードがない場合、自動的に抽象メソッドになります
boolean lock();
boolean unlock();
}
[/c]
インターフェイスの宣言は↑のように行います。
上記のインターフェイスを実装するには、implementsキーワードを使って以下のように書きます。
[c]
/*
インターフェイスが持つフィールドは必ず定数
インターフェイスが持つメソッドは必ず抽象メソッド
インターフェイスはインスタンスを作ることはできない
*/
//インターフェイスの実装
class Kinko implements Lockable {
public boolean lock() {
return true;
}
public boolean unlock() {
return false;
}
}
[/c]
インターフェイスはインスタンスを作ることはできません。
[c]
//これはできない
Lockable obj = new Lockable();
[/c]
インターフェイス型の変数を使うことはできます。
[c]
Lockable obj = new Kinko();
obj.lock();
という形で呼び出すことができます。
[/c]