>  Q&A  >  본문

ios - 重写init方法后,属性声明后为什么不为nil?

PHP中文网PHP中文网2764일 전408

모든 응답(1)나는 대답할 것이다

  • 黄舟

    黄舟2017-04-17 17:19:08

    스탠포드 공개수업을 보고 계시는 것 같은데, 먼저 응원하겠습니다.

    보내주신 코드로 볼 때 이상이 없는 것 같습니다.

    playingCardDeck 속성을 호출할 때 _playingCardDeck 대신 self.playingCardDeck을 사용하는지 여부에 초점을 맞춰 코드의 다른 부분을 다시 확인하세요.

    속성 getter를 재정의하는 방법을 지연 로딩이라고 합니다. 여기서는 이점에 대해 자세히 설명하지 않겠습니다. 주의해야 할 점은 이 속성을 처음 호출할 때 _xxx 대신 self.xxx를 사용해야 한다는 것입니다. . self.xxx만이 getter 메소드를 호출하기 때문입니다. 따라서 안전을 확보하려면 이 속성의 getter 및 setter를 제외한 다른 모든 위치에서 self.xxx를 사용하는 것이 가장 좋습니다.

    회신하다
    0
  • 취소회신하다