5-3 クラスの継承
ポイント:継承と型プロパティ/メソッドの働きを理解する
オブジェクト指向としての機能の中でももっとも重要なものが「継承」でしょう。Swiftのクラスも、もちろん継承をサポートしています。
継承を利用したクラスの定義
class クラス名 : 継承元のクラス名 {
……クラスの内容……
}
サブクラスでは、スーパークラスのメソッドをオーバーライドすることができます。オーバーライドする際には、必ずoverrideをつけて、そのメソッドがオーバーライドされたものであることを明示する必要があります。
オーバーライドするメソッドの書き方
override func メソッド名 ( 引数 ) { ……処理…… }
インスタンスは、継承関係にあるクラスにキャストすることができます。ただし、これはダウンキャスト(スーパークラスへのキャスト)のみです。アップキャスト(サブクラスへのキャスト)は一部の例外を除きできません。
キャストの書き方
変数 = インスタンス as クラス名
変数 = インスタンス as? クラス名
クラスに保管され、インスタンスを作らず呼び出せるプロパティやメソッドは「型プロパティ」「型メソッド」と呼ばれます。これは冒頭に「class」をつけてプロパティやメソッドを記述します。型プロパティは、クラスの場合、値の取得のみ可能です。
型プロパティの定義
<この記事は会員限定です。会員登録をすると続きをお読みいただけます。
ログイン / 新規登録