본문 바로가기

Flutter-플러터/플러터 공부

final const

반응형

final 과 const 상수를 선언할 때 많이 쓰인다. 하지만 아주 중요한 차이점을 가지고 있다. 

 

 

현재 시간을 나타내는 함수 

 

final Datetime.now = Datetime.now();  // 실행 가능 

 

const Datetime.now = Datetime.now();   //실행 불가능

 

 

코딩을 하면 순간적으로 컴퓨터가 이해하는 101010101의 언어로 변환된다. 이 과정을 '빌드' 라고 하는데 

빌드는 지금 실행될 수 도 있고 다음에도 실행될 수 있다. 고로 const는 위 함수에 실행이 되지 않는다. 

 

 

 

 

final - 빌드 타임을 몰라도됨 ,  실행 중에 값이 결정됨

 

const - 빌드타임을 알아야됨 , 컴파일시 값이 결정됨

 

  • final은 여행을 가기 전에 정하는게 아니라, 여행 중에 결정할 수 있음. 단 결정하고 나서는 변경 불가
  • const는 먹을 것을 여행을 가기 전에 미리 정한 것, 가서 딴거 먹을래라고 물어보면 안됨

참고

Dart final과 const의 차이 (velog.io)

 

728x90
반응형