인프런 커뮤니티 질문&답변

이병민님의 프로필 이미지
이병민

작성한 질문수

iOS 개발을 위한 swift5 완벽 가이드

Initializer Delegation

질문

작성

·

223

0

initializer delegation에서의 3가지 규칙을

1.desiganted 생성자는 반드시 superclass의 designated 생성자를 호출해야한다. ->delegate up

2.convenience 생성자는 반드시 같은 클래스에 있는 convenience 생성자를 호출해야한다. <- delegate across

3.covenience 생서자가 호출되었을때 반드시 동일한 클래스내에 있는 designated 생성자가 호출되어야한다.

라고 학습했는데

영상 9:35초에서 square 클래스에서  Square 클래스에서 첫번째 convenience 생성자는 super class의 designated 생성자를 호출하는데 이건 몇번 규칙인가요..?

또 두번째 생성자는 super class의 convenience 생성자를 호출하는데 이것도 몇번 규칙인가요?

답변 1

0

KxCoding님의 프로필 이미지
KxCoding
지식공유자

안녕하세요 :)

두 가지 모두 상위 클래스에서 상속된 생성자를 호출하는 것입니다. 따라서 2번, 3번에 규칙에 속합니다. 

self. 으로 호출하면 항상 delegate across

super. 으로 호출해야 delegate up 입니다.

이병민님의 프로필 이미지
이병민

작성한 질문수

질문하기