インターフェースは gooの国語辞典で
異なる種類のものを結びつけるときの共用部分。
コンピューターで、機器やプログラムどうしをつなぐ装置、
とあるよ。
このクラスAに、X の機能を入れたい
クラスAの機能と、クラスX の機能を一緒にすればできるよ
しかしJAVAでは 2つのクラスをつなげて
新しいクラスを作る ということはできないよ
クラスAの中に、X の機能を書き込むのよ
クラスBにも、X の機能を書き込みたい
それにはどうするの
携帯電話にデジカメの機能を入れたい
パソコンにデジカメの機能を入れたい
携帯電話のデジカメとパソコンのデジカメでは
作り方は違うよね、
しかし「シャッタを押して写真をとる」のは同じだね
この機能を付けろ、その付け方は
携帯電話にあった方法、パソコンにあった方法で
と指示するよ。
この機能の指定がJAVAのインターフェースなのよ
こんなふうに書くのよ
class パソコン implements デジカメ{...}
class 携帯電話 implements デジカメ{...}
デジカメ というインターフェースは
こんなふうに書くよ。
interface デジカメ{
写真 シャッタを押す();
}
シャッタを押した結果出てくるのが写真だよ
写真というクラスのオブジェクトだよ
class パソコン implements デジカメ{...}
の ... に、次のようにメソッドの本体を含めて書くのよ
public 写真 シャッタを押す(){...メソッドの本体....};
class 携帯電話 implements デジカメ{...}
の ... にもどうように携帯電話用の
メソッドの本体含んだ「シャッタを押す」メソッドを書くのよ
親戚のおじさんみたいなものだよ(?)
直接受け取るものはないが、あれしろ、これしろとうるさい人がいるでしょ
親戚のおじさんみたいなものだよ(?)
直接受け取るものはないが、あれしろ、これしろとうるさい人がいるでしょ