後続言語への影響としては、特にJavaの基礎設計にその姿を見ることができる（サン・マイクロシステムズがOPENSTEP開発を共同で行なっていたことと関係がある）。
歴史.
基本的な構文.
メッセージ送信.
// メッセージの送信
// 単項メッセージ
// メッセージの入れ子
クラス定義.
// 典型的なinit
 self = [super init]; // スーパークラスの呼びだし
互換性.
特徴.
リフレクション.
リフレクションの一部.
転送.
転送の例.
Appleの[[ランタイムライブラリ|ランタイム]]では、セレクタに対応する引数情報と転送処理の二つの過程を経て行われる。
// 元のターゲットの代わりに別のターゲットで実行を行なうとあたかもそのオブジェクトにメッセージが送られたかのように動作する
プロトコル.
プロトコルはクラスのメソッドインターフェースを規定する機構である。元々はNeXTワークステーション上で分散オブジェクトシステムを構成する際、リモートオブジェクトの通信効率を上げるために導入された。
プロトコルに準拠するクラスは定義されたメソッドを全て実装しなければならない。また、プロトコルは多重継承を許す。
プロトコルの例.
// プロトコルを定義する
// プロトコルを導入する
// 実際には対応する実装を用意する義務がないため、NSObjectを継承したオブジェクトがそれを行なった場合のみ利用できる
カテゴリ.
カテゴリは、クラス定義をグループに分割したり、既存のクラスにメソッドを追加したりするための言語機能。Smalltalkが統合開発環境上でクラスとメソッドの表示を整理するために使っている[[Smalltalk#ファイル用構文|クラスカテゴリーとメソッドカテゴリー]](プロトコルとも言う)をそのまま取り込んだ。
クラスの実装を関連するメソッド群毎に別々の場所に分割して記述することを可能とする目的で作られた。
カテゴリメソッドで既存のメソッドをオーバーライドすることも可能であるが、推奨されていない。
カテゴリの例.
メモリ管理.
手動管理の場合.
// オブジェクトのインスタンス化
// オブジェクトの解放
// オブジェクトを参照する変数
その他.
メタ言語的メカニズム.
言語ブリッジ.
参考文献.
外部リンク.