前回は、すべてのオブジェクトはid型になることを説明したが、今回はそのオブジェクトの性質を調べる方法を説明しよう。今回説明する調査のポイントは次の2点となる。 そのオブジェクトはどのクラスに属しているのか? どのメソッドに対応できるのか? だ。早速、説明しよう。 クラスオブジェクト まず、オブジェクトのクラスを調べる方法を説明しよう。すべてのオブジェクトは自分のクラスに関する情報をメタ情報として持っており、これをクラスオブジェクトという形で取得できる。 クラスオブジェクトは、classというメソッドを使ってオブジェクトから取得することができる。型は、id型を使っても良いし、クラスオブジェクトのための型Classを使うこともできる。例えば、あるメソッドにid型のオブジェクトが渡された場合、次のようなコードでクラスオブジェクトを取得可能だ。 - (void)method:(id)object