(다트) Const vs Final
최대 1 분 소요
final 키워드
- statelessWidget안에 변수는 실제로 한번 값이 정해지면 변하지 않는다. 쉽게 생각하면 돌이라고 생각하면된다.
- 어디에서나 재사용은 가능, 값은 변경 불가능
- 차이점
- 한번만 설정할 수 있다.
- 동일한 패턴으로 재사용 가능
const 키워드
- final 키워드와 똑같다.
- 차이점
- 컴파일 타임 상수이다.
- 앱이 실행 되면 딱 1번만 값이 정해지면 다시 컴파일 할때 까지 값을 할당할 수 없음.
예제 활용 이해
void main() {
const int myConst = 2 + 5 * 8; // 컴파일시 값을 할당 가능 한 값이어야함
const int myConst = DateTime.now();
// 컴파일 되고나서 DateTime.now()를 실행하기 하여 현재시간을 갖고 와야하기 때문에
// 에러가 난다.
final int myFinal = 2 + 5 * 8; // 언제든지 한번 값을 할당하면 상관 없음
const int myConst = DateTime.now(); // 언제든지 한번 값을 할당하면 상관 없음
myConst = 4; // 다시 값을 할당 할 수 없음.
myFinal = 4; // 다시 값을 할당 할 수 없음.
}
댓글남기기