• 카테고리

    질문 & 답변
  • 세부 분야

    모바일 앱 개발

  • 해결 여부

    미해결

질문

21.07.01 18:30 작성 조회수 133

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

안녕하세요 :)

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

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

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