DART

[Dart] const과 final 차이

유호야 2022. 11. 29. 19:10
반응형

const와 final

두 값 모두 final 과 const 는 한 번 설정한 값을 변경할 수 없다는 공통점이 있다.

차이점이라면 const 의 경우, 컴파일 타임에서 상수를 정의할 수 있다.
즉, const 로 정의한 상수는 런타임에서 정의되는 값을 설정할 수 없다는 의미다.
예를 들어 DateTime.now()과 같은 런타임에서 호출 될 때마다 결과 값이 다른 경우는 const 로 설정할 수 없다.

결국 const 로 설정하는 값은 대부분 리터럴이다.
반면, final 은 DateTime.now()와 같이 런타임에서 결정되는 값도 설정할 수 있다.

반응형