ルートクラス
ルートクラスは他のクラスからは全く継承せず、インターフェースとその下の階層にあるすべてのオブジェクトに共通する動作を定義します。その階層内のすべてのオブジェクトは、最終的には、ルートクラスから継承します。ルートクラスは、時々、基本(ベース)クラスと呼ばれます。
すべての Objective-C のクラスのルートクラスは、Foundation フレームワークの一部である NSObject です。ココアやココアタッチのアプリ内のすべてのオブジェクトは、最終的に NSObject から継承します。このクラスは、他のクラスが、Objective-C 実行環境と対話することによる、主要なアクセスポイントです。また、基本的なオブジェクト·インタフェースを宣言し、イントロスペクション、メモリ管理、およびメソッド呼び出しなどの基本的なオブジェクトの動作を実装します。ココアとココアタッチオブジェクトは、ルートクラスからの大部分のオブジェクトのように振る舞う能力を引き出します。
注意: Foundation フレームワークは、別のルートクラス、NSProxy を定義しますが、このクラスはココアのアプリでは滅多に使われず、ココアタッチアプリでは、決して使われません。
ルートクラスの NSObject は、そのプログラム·インタフェースに貢献している、それもまた NSObject という名前なのですが、そのプロトコルを採用しています。プロトコルは、どのルートクラスにでも求められる基本的なプログラムインターフェイスを指定します。
前提条件の記事
関連記事
既出の議論
Objective-C でのプログラミング
次の章
前の章