菜鸟教程小白 发表于 2022-12-12 22:27:17

objective-c - 子类化和属性分配


                                            <p><p>我有一个类:</p>

<pre><code>@interface BasicDescription : NSObject

@property (strong,nonatomic) NSString *author;
@property (assign,nonatomic) NSInteger year;
@property (strong,nonatomic) NSString *owner;
</code></pre>

<p>二等:</p>

<pre><code>@interface AdvDescModel : BasicDescription

-(id)initWithBasicModel:(BasicDescription*)basicModel;
</code></pre>

<p>所以我的问题是当我创建新对象时如何分配所有属性。现在我有</p>

<pre><code>AdvDescModel *adv = initWithBasicModel:basic];
</code></pre>

<p>然后在初始化器中:</p>

<pre><code>-(id)initWithBasicModel:(BasicDescription*)basicModel {

    if(self = ) {
      ;
    }
    return self;
}

-(void)setAllParams:(BasicDescription*)bModel {

    ;
    ;
    ;
}
</code></pre>

<p>但是没有更好的方法来做到这一点?现在我必须查看我所有的属性并为每个属性调用 setter。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>您初始化对象的方式还不错,如果它满足您的要求,您可以以这种方式离开......但是看看<a href="http://erik.doernenburg.com/2011/11/builder-pattern-in-objective-c/" rel="noreferrer noopener nofollow">Builder Pattern</a>在这种情况下,这将是最好的选择。</p></p>
                                   
                                                <p style="font-size: 20px;">关于objective-c - 子类化和属性分配,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/11817703/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/11817703/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: objective-c - 子类化和属性分配