Home » 프로퍼티 오버라이드

프로퍼티 오버라이드

프로퍼티 상속 파고들기 – Swift

Swift 컴파일러는 클래스의 상속과 관련하여 이런 저런 여러가지 제약 사항들을 가지고 있다. 이는 클래스의 상속 관계는 자칫 매우 복잡한 문제로 발전할 수 있으며, 사람은 이 문제와 관련해서 너무나 관대하여 자신이 실수했다는 사실을 알아차리기 힘들다는 경험적 사실 때문이다. 그래서 “이렇게 하면 되겠지”하는 코드들이 유독 클래스 상속과 관련해서는 뜻대로 되지 않는 경우가 많다.

이 글에서는 상속의 관점에서 프로퍼티는 어떤 제약을 받는지, 헷갈리는 몇 가지 사례들과 함께 점검해보도록 하자.

더 보기 »프로퍼티 상속 파고들기 – Swift

Swift의 프로퍼티에 대한 이해

프로퍼티(property)는 직역하자면 “재산”, “소유물” 등으로 번역되는데, 보통은 속성이라고 번역하여 쓰는 것이 일반적이다. (“속성”이라는 의미의 attribute와 혼동이 있을 수 있지만, 일단 언어의 기능으로 한정했을 때에는 크게 상관은 없을 것 같다.) 프로퍼티는 클래스나 구조체 혹은 열거체(enum 타입)의 객체 인스턴스가 그 내부에 가지고 있는, 객체의 상태에 관한 정보를 말한다. 이렇게 말하면 Swift의 프로퍼티는 마치 C 구조체의 멤버 변수와 다름 없다고 생각될 수 있는데, 조금 차이가 있다. Swift의 프로퍼티 개념은 Objective-C의 선언 프로퍼티의 개념을 이어 받은 것이라 볼 수 있다. 따라서 프로퍼티에 대해 생각할… 더 보기 »Swift의 프로퍼티에 대한 이해