検索
[Flutter/dart] privateかつfinalなクラス変数
- M.R 
- 2022年11月29日
- 読了時間: 1分
概要
dartであるクラスに変数を追加するとします。
- private(外部からアクセスさせたくない) 
- コンストラクタの引数を参照して値を決定 
- 上記で一度値を設定したらその後変更はない 
このような場合、この変数はfinalとしたいですね。
この方法を紹介します。
方法
まず思いつくのは、コンストラクタの内部で値を設定すればいいのでは?ということですが、finalな変数はコンストラクタ内部で値を設定できません。
class AClass{
  
  final String _title;
  ・・・
  
  Genre({required String name}){
    _title = setTitle(name);   //コンパイルエラー
  }
}
初期化子で設定しましょう。
class AClass{
  
  final String _title;
  ・・・
  
  Genre({required String name}):
    _title = setTitle(name);   
}最後に
分かれば簡単な話ですが、気づくまで少し手間取りました。
そもそも今まであまりfinalを使っていなかったので、、、






コメント