現役エンジニアに悩みを無料相談詳細はこちら

【Flutter/Dart】クラスの継承|extends/super/@override

Dartで親クラスを継承(サブクラスを生成)する方法を紹介します。

継承を理解する上で必要となるのは「extends」「super」「@override」の3つです。

目次

extends|親クラスを継承

親クラスに引数がない場合

class サブクラス名 extends 親クラス名{}

親クラスで引数を必要としない場合は上記コードのようにクラスを継承できます。

親クラスに引数がある場合

class サブクラス名 extends 親クラス名 {
  サブクラス名(引数) : super(引数);
}

親クラスで引数を必要とする場合、サブスクラスのコンストラクタで「super」を使って親クラスのコンストラクタを呼び出し継承します。

super|サブクラスから親クラスを呼び出す

親クラスのコンストラクタに引数を渡す

class サブクラス名 extends 親クラス名 {
  サブクラス名(引数) : super(引数);
}

親クラスのサブクラスのコンストラクタで「super」を使って親クラスのコンストラクタを呼び出し継承します。

親クラスのプロパティ・メソッドを呼び出す

super.親クラスのプロパティ名
super.親クラスのメソッド名

サブクラスから親クラスのプロパティ・メソッドを呼び出すには上記のように「super.〇〇」で呼び出します。

@override|親クラスのメソッドをオーバーライド(上書き)

@override
親クラスでオーバーライドしたいメソッド

親クラスのメソッド・ゲッター・セッターをオーバーライドするには「@override」を記述した後で同名で再定義するだけです。

関連チートシートはこちら

効率的にFlutterを学習したい方は世界最大級のオンライン学習サイトUdemyがオススメ。

最安1200円から独学でスキルアップを目指せます!

\ サンプル動画・30日間返金保証あり /

  • URLをコピーしました!
目次
閉じる