코드에서 null 값을 참조하려고 하면, 런타임 에러가 뜬다.
(* 런타임 에러 : 사용자가 내 앱을 사용하던 중에 뜨는 에러)
1. String 타입의 매개변수를 받는 곳에 null을 전달.
2. null에는 length라는 속성이 없기 때문에 에러가 발생한다.
- 이러한 에러는 컴파일러가 못 잡는 에러이기 때문에 사용자 기기에서 발생한다.(런타임 에러)
이러한 문제점 때문에 dart에서는 null satfety를 만들었다.
* null saftey : 개발자가 null 값을 참조할 수 없도록 한다.
※ dart에서는 어떤 변수가 null이 될 수 있음을 정확히 표시해야한다.
name이 null도, string도 될 수 있다고 하려면 타입 뒤에 "?"를 넣어주면 된다.
- dart의 null safety는 어떤 변수, 혹은 데이터가 null이 될 수 있음을 명시하는 걸 의미한다.
- 위 사진에서처럼 어떠한 에러도 발생하지 않는 것을 확인 할 수 있다.
(* 정리)
- 기본적으로 모든 변수는 non-nullable이다. (null이 될 수 없다.)
- 이 변수가 String도, null도 될 수 있게 하려면 "?"물음표를 넣어주면 된다.
- 이렇게 하면 dart는 이 변수가 null이 될 수 있다는 것을 알게 된다.
- name이 null이 아니라면 isNotEmpty 속성을 달라고 요청.
* 요약 : nullable 변수를 만들고 싶으면, 꼭 물음표를 넣어라.
'Dart' 카테고리의 다른 글
Dart_6 : Constant 변수 (0) | 2024.11.10 |
---|---|
Dart_5 : Late 변수 (0) | 2024.11.10 |
Dart_4 : Final 변수 (0) | 2024.11.10 |
Dart_2 : Dynamic 타입 (0) | 2024.11.09 |
Dart_1 : 변수 (0) | 2024.11.09 |