菜鸟教程小白 发表于 2022-12-12 22:46:49

objective-c - 子类中的父类(super class)方法放置


                                            <p><div>
            <aside class="s-notice s-notice__info post-notice js-post-notice mb16"role="status">
      <div class="d-flex fd-column fw-nowrap">
            <div class="d-flex fw-nowrap">
                <div class="flex--item wmn0 fl1 lh-lg">
                  <div class="flex--item fl1 lh-lg">
                        <b>这个问题在这里已经有了答案</b>:
                        
                  <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>我的一般经验法则是,构造/创建行为首先通过 <code>super</code> 调用,而破坏或拆除状态的行为以相反的顺序发生 - <code>super</code> 是最后调用。很少需要偏离这一点。</p>

<p>原因通常不是优化(如您的帖子中所问),而是可预测的<em>语义</em>。</p>

<p><strong>示例 A:</strong></p>

<p> build :</p>

<pre><code>- (id)init
{
self = ; // &lt;&lt; set up super
if (0 != self) {
    // set up self
...
</code></pre>

<p>破坏:</p>

<pre><code>- (void)dealloc
{
, ivar = 0; // &lt;&lt; tear down self
; // &lt;&lt; tear down super
</code></pre>

<p><strong>示例 B:</strong></p>

<p> build :</p>

<pre><code>- (void)viewWillAppear:(BOOL)pAnimated
{
; // &lt;&lt; call through super first
// now set up self
...
</code></pre>

<p>破坏:</p>

<pre><code>- (void)viewDidDisappear:(BOOL)pAnimated
{
// tear down self
; // &lt;&lt; now tear down super
</code></pre></p>
                                   
                                                <p style="font-size: 20px;">关于objective-c - 子类中的父类(super class)方法放置,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/12345512/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/12345512/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: objective-c - 子类中的父类(super class)方法放置