広告スペース(バナー)
🍎Objective-C レッスン
基本文法の基礎8▾
データ構造とオブジェクト指向7▾
構文の基本を深める9▾
関数とデータ構造の応用9▾
アルゴリズムとテストの基礎8▾
文字列・数値操作の応用8▾
実務で役立つ機能8▾
レッスン 16 / 68
カテゴリ(Category)でクラスを拡張する
このレッスンでは、Objective-Cのカテゴリ(Category)を使って既存クラスを拡張する書き方を学び、共通の性質を持つクラス同士でコードを再利用できるようになることを目標にします。「Objective-C カテゴリ 使い方」で調べている方向けです。
カテゴリ(Category)を使うと、既存のクラス(標準ライブラリのクラスも含む)に新しいメソッドを追加できます。継承とは違う、Objective-C独自の拡張方法です。
サンプルコードでは、@interface NSString (Shout)という書き方で、既存のNSStringクラスにshoutという新しいメソッドを追加しています。[@"hello" shout]のように、標準クラスにあたかも最初から存在するメソッドのように呼び出せる点に注目してみましょう。
初心者がよくつまずくのが、カテゴリと継承の違いです。継承は新しいクラスを作りますが、カテゴリは既存のクラス自体に直接メソッドを追加する、より直接的な拡張方法です。
実際の開発現場では、標準クラスに便利なメソッドを追加したい場面で、カテゴリがObjective-Cらしいテクニックとしてよく使われます。
📖 お手本コード
✍️ あなたのコード
コードを書いたら「実行する」を押してください
🧪 このサイトではObjective-Cを直接コンパイル・実行できないため、お手本コードと同じ内容を入力できたかをその場で判定します(採点はブラウザ内だけで行われ、どこにも送信されません)。
広告スペース(バナー)
広告スペース(記事内)