🙌

Dartのconstコンストラクタとは

2020/09/26に公開

まずはfinal,const,コンパイル時定数という用語を抑えておく必要がある。

  • final
    • 初期化開始後1度だけ初期化
    • 再代入不可
    • 確保したメモリの内容は書き換えできる
      • final hoge = [1,2,3]
        hoge = [] // エラーになる
        hoge[0] = 10 // エラーにならない
        
  • const
    • コンパイル時に決まる定数 = コンパイル時定数
    • 再代入不可
    • 確保したメモリの内容の書き換えもできない
       const hoge = [1,2,3]
       hoge = [] // エラーになる
       hoge[0] = 10 // エラーになる
      
  • コンパイル時定数とは

constコンストラクタとは

  • 上記を踏まえて、constコンストラクタ とは
    • コンパイル時定数のみ引数に受け付けるクラスのコンストラクタ
参考リンク

Discussion