Swiftスタートアップガイド

オブジェクト指向を更に深く! - 6-2 Extensionの利用

Icon comment count 0
Icon stock count 0

6-2 Extensionの利用

ポイント:Extensionにより既にあるクラスを拡張できる

 Extensionは、クラスを拡張するための仕組みです。Extensionを作成することで、既にあるクラスに新たな機能を付け加えることができます。これは次のように記述します。

Extension の書き方

extension クラス {
    ......追加する内容......
}

Extensionは何でも拡張できるわけではなく、プロパティはComputedプロパティしか拡張できません。また、Extensionは継承とは違うので、既にあるメソッドをオーバーライドすることはできません。あくまで「今あるクラスにそのまま機能を付け足す」というものであることを理解して使う必要があります。

Extensionについて

 クラスを拡張する場合、そのクラスを継承したサブクラスを定義する、というのはオブジェクト指向の基本です。が、このやり方は機能を拡張した別のクラスを用意するということであり、クラスそのものを改変するわけではありません。

 一般的には、継承を使った拡張で十分でしょうが、時には継承ではなく、既にあるクラスそのものを拡張したいというようなこともあります。例えば、StringなどSwiftに用意されている型を拡張したい、と思ったら、継承はあまり役には立ちません。Stringリテラルなどまで含めてすべてをStringのサブク

出典情報

Medium

Swiftスタートアップガイド

  • 著者: 掌田 津耶乃

コメント

    コメントはありません