【 Flutter 】Flutter を 基礎 から 学習 ( Dart編 ) part20 コンストラクタ

基礎 から 学ぶ Flutter 」という書籍で  学習 したことを ブログでアウトプットしていこうと思います。今回は Dart編 ( part20 )です。

 

前回

【 Flutter 】Flutter を 基礎 から 学習 ( Dart編 ) part19 コンストラクタ

引き続きコンストラクタを学習します。

コンストラクタ

Named constructors

コンストラクタに名前を付けることができます。
これは画期的ですね!コンストラクタはクラス名と同じメソッド名というのがルールなので
複数のコンストラクタを定義するとどんな目的のコンストラクタなのか実際に実装を見ないとわからないことが多かったですからね。

コンストラクタ名の後ろにドット.を続け、さらにその後ろに任意の名前を定義します。

class Hoge {
  String name = '';
  num age = 0;
  // コンストラクタ
  Hoge(this.name);
  
  // Named constructors
  Hoge.ageSet(this.age);
}

void main() {
  // 普通の静的メソッド呼び出しみたいですよね。
  var a = Hoge.ageSet(5);  
}

最後に

サンプルコードにも記載しましたが、静的メソッドみたいですね。
内部では実は静的メソッドが生成されているのでしょうかね。
ということはNamed constractorsとは「名前が付いたシンタックスシュガー」ともいえるような気がしました。

今日はここまで!