더북(TheBook)

2.1.2 가변 필드 사용하기

2.1절 시작 부분에서 val은 참조가 불변이라는 뜻이라고 설명했다. 그렇다면 모든 참조는 항상 불변일까? 그렇지 않다. 하지만 가능한 val을 많이 사용해야 한다. 참조를 바꿀 수 없다면 일단 초기화된 참조를 더럽힐 방법이 없기 때문이다. 마찬가지 이유로, 최대한 빨리 참조를 초기화해야 한다. 나중에 보겠지만, 일반적으로 코틀린은 초기화하지 않은 참조를 쓸 수 없도록 막는다. 이 부분은 초기화하지 않은 참조를 자동으로 null로 설정하고 자유롭게 쓸 수 있게 허용하는 자바와 다르다.

가변 참조를 사용하려면 다음과 같이 valvar로 바꿔야 한다.

var name = "Frank 현석 Oh"
...\name = "Joyce 계영 Lee"

하지만 var 사용을 최대한 피하는 편이 낫다는 점을 명심하라. 참조가 가리키는 대상이 바뀌지 않으면 프로그램을 추론하기가 훨씬 쉽기 때문이다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.