void main (){
final String name = 'apple';
print(name);
name = 'red';
=> 에러발생
const String name2 = 'banana';
print(name2);
name = 'yellow';
=> 에러발생
}
- final / const 로 선언하면 값을 변경 할 수 없다.
활용
void main (){
final name = 'apple';
print(name);
const name2 = 'banana';
print(name2);
}
- final / const 는 코드를 작성할 때, 타입을 생략 할 수 있다.
final / const 차이
void main (){
final DateTime now = DateTime.now();
print(now);
const DateTime now2 = DateTime.now();
print(now2); => 에러발생
}
- 코드를 실행하면 에러가 발생한다. 그 이유는
const
는 buildtime
값을 알고있어야 하기 때문이다. buildTime
이란 코드를 작성하면 이진수로 변환이 되는데 그 순간을 말한다.
buildtime 값을 알고있어야 한다
의미는 코드를 작성하는 순간에 값이 정해져 있어야 된다는 의미이다.
const
에서 DateTime.now();
는 코드가 실행
될 때 값이 정해지는 것이기 때문에 에러가 발생하게 된다.
final
경우 buildtime
값을 알고있지 않아도 된다.