2007年06月04日

オブジェクト指向−クラスとオブジェクトの例え話

最近何となくオブジェクト指向プログラミングの中に出てくる「クラス」−「オブジェクト」の関係がイメージできてきた感じがします。

たとえ話でよく鯛焼きと鯛焼きの型の話が出てくることは前に一度書きました。でもいまいち良く分からないと。

コンピュータの話をコンピュータで例えるのはどうかと思いますが、一応こんな理解です。

例えばWindows にはペイントというソフトがあります。HDD上では「mspaint.exe」というファイルになっています。これはあくまでもHDD上に記憶されているもので実行している状態ではありません。これをメニューから選ぶなり、ファイルをダブルクリックするなり、コマンドプロンプトから mspaint.exe で Enter を押すなりするとメモリ上に読み込まれて実行されます。

オブジェクト指向でいう「クラス」というのがこのHDD上に記憶されている状態(設計図)で、メモリ上に読み込まれた状態が「オブジェクト」の例えと考えるとしっくりいく。

実際に実行しているものとして存在している状態がオブジェクトですね。ペイントをいくつも立ち上げると、複数のウィンドウが開き、それぞれ別の絵を描くことができる(独立している)。元のmspaint.exe は同じもの。

これがプログラミングの中で言えると。何らかの性質(メソッド)を持った変数(オブジェクト)をクラス(型)からいくらでも作り出すことができて、それぞれは独立している。オブジェクトにして初めて使うことができるもの。それをこんな感じでイメージしてみました。

ここでいうのはあくまでもたとえ話なので、継承とかポリモーフィズム(だっけ?)などは全く考えていないのでそこのところよろしく。
posted by n_shimizu at 18:00| Comment(1) | TrackBack(3) | 日記2
この記事へのコメント
私がオブジェクト指向について生徒に説明するときは、Officeのオートシェイプを例にあげています。記事をトラックバックさせていただきましたが、他の事例があったら教えてください。
Posted by VX at 2007年06月05日 22:11
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
この記事へのトラックバックURL
http://blog.sakura.ne.jp/tb/4246688
※言及リンクのないトラックバックは受信されません。

この記事へのトラックバック

オブジェクト指向の身近な例
Excerpt: オブジェクト指向の例えについて ここからもリンクを張っているブログでオブジェクト
Weblog: 総合学科「情報」日誌
Tracked: 2007-06-05 22:05

基礎 第3回: オブジェクトの背後にあるもの―クラス
Excerpt: オブジェクト(インスタンス)とクラスの関係について、カレーを例にとって概念的に説明しています。 かえって混乱しますかね?
Weblog: オブジェクト思考
Tracked: 2007-07-03 19:03

「オブジェクト」ってなーに?
Excerpt: 「ドリトルについて」シリーズ番外編です。 このブログにも何度かオブジェクト指向が分からんとか、少し分かったとか書いてきました(オブジェクト指向が何となく解ってきた、オブジェクト指向−クラスとオブジェ..
Weblog: 情報科雑感
Tracked: 2009-02-15 00:54