프로퍼티 감시자를 사용하면 프로퍼티 값이 변경될 때 원하는 동작을 수행할 수 있습니다. 값이 변경되기 직전에 willSet
블럭이, 값이 변경된 직후에 didSet
블럭이 호출됩니다. 둘 중 필요한 하나만 구현해 주어도 무관합니다. 변경되려는 값이 기존 값과 똑같더라도 프로퍼티 감시자는 항상 동작합니다.
willSet
블럭에서 암시적 매개변수 newValue
를 사용할 수 있고, didSet
블럭에서 암시적 매개변수 oldValue
를 사용할 수 있습니다.
프로퍼티 감시자는 연산 프로퍼티에 사용할 수 없습니다.
관련문서