ios 動態(tài)創(chuàng)建類

//動態(tài)創(chuàng)建類

        //1.使用objc_allocateClassPair創(chuàng)建一個類Class
        const char *className = "Person";
        Class class = objc_getClass(className);
        if(!class){
            Class superClass = [NSObject class];
            class = objc_allocateClassPair(superClass, className, 0);
        }
        
        //2.現(xiàn)在可以使用自定義的Person類
        id instance = [[class alloc] init];
        
        //3.給instance類添加一個屬性name,并且賦值
        objc_setAssociatedObject(instance, "name", @"Victor John", OBJC_ASSOCIATION_COPY_NONATOMIC);
        
        //給description屬性設(shè)置
        objc_setAssociatedObject(instance, "description", @"Person類的description", OBJC_ASSOCIATION_COPY_NONATOMIC);
        
        //4.然后獲取值
        id name = objc_getAssociatedObject(instance, "name");
        id description = objc_getAssociatedObject(instance, "description");
        
        //5.輸出打印
        NSLog(@"Person=%p, name=%@ ,description=%@", class, name, description);
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容