簡體   English   中英

我應該在我自己的代碼之后還是之前調用[super superMethod]?

[英]should I call the [super superMethod] after my own code or before it?

[抱歉我的英語不好]

問題很簡單(但我在表達它並在谷歌中發現它時遇到了麻煩)......

我應該(在所有類似的情況下,當我覆蓋超級方法時,不僅僅是這個)使用:

- (void)viewDidLoad
{
    /*
       my code
     */

    [super viewDidLoad];
}

要么

- (void)viewDidLoad
{
    [super viewDidLoad];

    /*
       my code
     */
}

還是依賴?

在某些情況下,訂單無關緊要。 在其他方面,秩序至關重要。

一些有助於的概括:

  • 當你構建對象狀態的一部分( viewDidLoadinit... )時,先通過super調用。
  • 當你破壞對象狀態的一部分( viewDidUnloaddealloc )時,通過super last調用。
  • 如果我確定訂單無關緊要,那么我只需通過super優先打電話以便於組織。

這取決於方法; 例如-[super init] (之前)vs -[super dealloc] (之后)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM