본문 바로가기
취미노트/코딩공부

따라하며 배우는 Flutter 앱 개발입문(3) final, const

by 복습쟁이 2023. 12. 3.
반응형

상수 : 항상 존재하는 수(값)

상수를 표현하는 함수 : final, const

 

1. final : 값이 한번 할당되면 변경할 수 없음

위처럼 코드를 입력하면 아래와 같은 오류가 뜬다.

 

왜냐하면 final을 7번 줄에서 10으로 정했기 때문에, 그 다음 줄에서 30으로 할 수 없기 때문이다.

 

이런식으로 할당이 되면 문제가 없다.

 

2. const : final보다 엄격함.

final처럼 const도 값이 한번 할당되면 변경할 수 없다.

이때, final보다 더 엄격해서, 위처럼 코드를 작성하면 아래와 같은 오류가 뜬다.

const는 선언과 동시에 값을 할당해야만 하기 때문이다.

즉, const는 컴파일 시점에서 해당 값이 결정되어야 한다.

 

 

3. final과 const를 구분하는 이유?

컴파일이란 무엇인가? 우리가 영어로 작성한 코드를 컴퓨터가 알아먹도록 변환하는 것을 의미한다.

 

위에서 알아본 바와 같이 final은 런타임시점에서 실행이 가능하고,

const는 컴파일 시점에서만 실행이 가능하다.

 

즉, const가 런타임시점보다 빠른 시점에서 입력되므로 성능 상 이점이 있다.

 

728x90
반응형

댓글