メソッドとアトリビュート

| コメント(0) | トラックバック(0)

オブジェクト指向第1回目。

オブジェクト指向とは一言で言うと、
ある物が外部の物からメッセージを受けて
そのメッセージに対応する振る舞いをする。
というということである。
なんのこっちゃ、よー分からんね。

例えば、車という物について考えてみる。
車の振る舞いとして、
走る、止まる、曲がる
などがある。
人が走れと車にメッセージを送ることにより、車は走り出す。
(実際は、こんな抽象的でないんですが・・・簡略化のため)。

人という車でない外部のオブジェクトから、
車というオブジェクトに対して
走れというメッセージを受けて
車は走るという振る舞いを実行するのです。

簡単に書きすぎて返ってわかりにくいかな。
もうちょっと車らしく。
車はエンジンやアクセルを持っています。
エンジンやアクセルもオブジェクトです。
人がエンジンにセルを回すというメッセージをだして
エンジンはそれを受け取り、エンジンを回す。
人がアクセルを踏むというメッセージを
アクセルに送ると、アクセルはエンジンに対して
回転数を上げろというメッセージを送り、
エンジンはメッセージを受けて回転を早める。
こうやって各オブジェクトがメッセージやりとりをした結果、
車は走ることができるのです。
(これでも簡単に書きすぎていて、実際はもっとたくさんの
オブジェクトが複雑に絡みあっていますが・・・)

こんな感じで、まずオブジェクトありきで、
オブジェクト同士がメッセージをやりとりして
振る舞いをするという考え方がオブジェクト指向です。
振る舞いのことをメソッド(method)と呼びます。

メッセージを送るとか受け取るとかややこしいんだけど、
簡潔に言うと、メッセージを送るというのは
メソッドを呼び出すということ。
メッセージを受け取るとは、メソッドが実行されること。

これ以外にもう一つ、オブジェクトには
属性(attribute)を持たせることができます。
車には色とか形など、
人なら、名前、性別、生年月日、年齢、血液型など
直接動作に結びつかない状態のことです。

とういことで、基本的にオブジェクトはメソッドと
アトリビュートから成り立ちます。
この表現は間違ってるんだけど・・・まぁいっか、詳しくは次回で。
とりあえず今回はこんなところで。。

次回は、クラスとインスタンスについてです。

トラックバック(0)

このエントリーのトラックバックURL:
http://shiyu-co.jp/cgi/mt/mt-tb.cgi/6/trackback/xxxxxxxx

CAPTCHA
トラックバックスパム防止のため、末尾の xxxxxxxx 部分を上記画像の数字に置き換えてからご利用ください。

コメントする

プロフィール

よっしー
  
  
フリーでSEをやっています。よろしくお願いします。

2016年4月

          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