libro
www.tuyano.com
初心者のためのObjective-Cプログラミング入門

クラスを作る! (6/7)

作成:2011-02-07 11:09
更新:2011-02-07 11:14

■メッセージの送信について

それにしても、わかりにくいのは「クラスに用意されているメソッドの呼び出し方です。先程のallocなどもそうですし、MyTestClassに定義したメソッドを呼び出すのも、こんな具合になっていました。
[obj setMessage:
        @"This is First Object!!"];
[obj printMessage];
Objective-Cでは、クラスやインスタンスにあるメソッドを呼び出す場合は、[]を使って以下のような形で記述をします。(変数は、インスタンスが設定されている変数と考えてください)
[変数 キーワード]
[変数 キーワード:値]
こんな具合に、「呼び出す対象となるインスタンス」「呼び出すメソッドのキーワード引数」といったものを順に[]内に書いていくのです。

Objective-Cでは、メソッドの呼び出しは「メッセージ」と呼ばれるものを送信して行います。メッセージの送信先を「レシーバ」、そのセレクタに贈るメッセージの内容を「セレクタ」といいます。

例えば、[obj setMessage:@"This is First Object!!"];というのは、objというレシーバにたいして、setMessageというセレクタに@"This is First Object!!"という値をつけてメッセージを送っている、ということになります。[obj printMessage];であれば、objレシーバに、printMessageというセレクタを呼び出すメッセージを送っているわけです。このメッセージである[obj printMessage];といったものを「メッセージ式」と呼びます。

こんな具合に「何に向けて」「どういうものを送信するか」ということを考えてメッセージ式を組み立てて実行していくわけです。すると、レシーバーに向けてメッセージが送られ、セレクタによってどのメソッドを呼び出すのかが識別され、見つかったメソッドが実行される、というわけです。

こんな具合に、Objective-Cのクラスは、「メソッドの定義の仕方」と「インスタンスへのメッセージの送り方」の2つがポイントとなることがわかります。この2つをしっかりと覚え、メソッドを自由に呼び出せるようになること、これが「クラス利用」の第一歩、といってよいでしょう。――まだまだわからない点はありますが、まずは「メッセージを送ってメソッドをう呼び出す」ということが確実にできるようになりましょう。

※プログラムリストが表示されない場合

AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。

※関連コンテンツ

「初心者のためのObjective-Cプログラミング入門」に戻る