스위프트 프로그래밍 3판을 보고 정리한 내용입니다.
구조체, 클래스에서 생성된 객체
초기화 과정은 새로운 인스턴스를 사용할 준비를 하기 위하여 저장 프로퍼티의 초깃값을 설정하는 등의 일을 한다.
Initiallizer(이니셜라이저)를 정의하면 초기화 과정을 직접 구현할 수 있다.
스위프트의 이니셜라이저는 반환값이 없다.
func 키워드를 사용하지 않고 init 키워드를 사용하여 이니셜라이저 메서드임을 표현한다.
실패 가능한 이니셜라이저는 init? 로 표시할 수 있다.
클래스의 인스턴스는 디이니셜라이저를 구현 할 수 있습니다.
메모리가 해제되기 직전 클래스 인스턴스와 관련하여 원하는 정리 작업을 구현할 수 있다.
클래스의 인스턴스가 메모리에서 소멸되기 바로 직전에 호출
deinit키워드를 사용하여 구현하면 자동으로 호출된다.