FC2ブログ
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
Javaのインタフェース
Javaのインタフェースについてだ。
Map, Set, List とかは、インタフェースだね。
で、こいつらを実装してるクラスがあるんだが、そんなことは、あまり考えないで、
Map が使いたいなぁ と思ったら、
Map map = new ○○(); と書いておけば大抵OK。

具体例を見てみよう。
ここに、君を作るぞ。そうだ君だ。
interface You {
	  void say();
}

これで君は、何か言えること(sayできる)だけは、決定したんだ。
だが、まだ君がなにを言える(sayできる)かは、決まっていない。

君は、生まれたばかりだとしよう。だから、赤ちゃんの君、BabyYouを作ろうじゃないか。
class BabyYou implements You{
	public void say(){ System.out.println("ばぶばぶ"); }
}

よし、できた。これで準備は万端。君のしゃべる声が聞けるんだ。
public class Main {
	public static void main(String[] args) {
		You you = new BabyYou();
		you.say();
	}
}

君をYouと宣言してるところに注意だ。BabyYouとは宣言してないんだ。
なんでかって? それは君が成長することを見越しているからなんだ。

大人になった君を作ろう。そうだ、君は大人になったんだ。大人な君、AdultYouを作ろう。
class AdultYou implements You{
	public void say(){ System.out.println("大人だ! 大人になったよ"); }
}

よしできた。ついに大人になった君の声を聞いてみようじゃないか。
public class Main {
	public static void main(String[] args) {
		You you = new AdultYou();
		you.say();
	}
}

どうだい? You で宣言していたおかげで、 new BabyYou() のところを、
new AdultYou() に変えるだけで、すんだんだ。
これで、20年先のソースでも改修は、簡単!ってわけさ。

しかし、最後に言っておかないといけないのは、僕はJavaに詳しくないってことさ。
スポンサーサイト
コメントを投稿する
Name:
URL:
Comment:

秘密:管理者にだけ表示を許可する
トラックバック
この記事のトラックバックURL
この記事にトラックバックする(FC2ブログユーザー)
ブログ検索

プロフィール

ビンゴ中西
Perlが好きである。
プログラミング言語のほとんどは独学。独学の過程で多くのプログラム仲間にも色々教わりました。

FC2カウンター

カレンダー

10 | 2018/11 | 12
- - - - 1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 -

ブロとも申請フォーム

この人とブロともになる

| ホーム |
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。