KVC

KVC:鍵值編碼

賦值有各種各樣的方式,點(diǎn)語(yǔ)法,KVC......


KVC的核心功能 : 修改類(lèi)中的私有屬性


創(chuàng)建一個(gè)Person類(lèi),私有屬性_personAge

@interface Person : NSObject

{

? ? @private

? ? int _personAge;

}

//姓名,體重,狗

@property(nonatomic, copy) NSString *name;

@property(nonatomic,assign)int weight;

@property(nonatomic, strong) Dog *dog;

-(void)loagAge;

@end


-(void)loagAge{

? ? NSLog(@"age = %d",_personAge);

}

創(chuàng)建一條狗

@interface Dog : NSObject

@property(nonatomic, copy) NSString *name;

@property(nonatomic,assign)int? dogAge;

@end


簡(jiǎn)單編寫(xiě):

self.p = [[Person alloc]init];

self.d = [[Dog alloc]init];

self.p.dog = self.d;

//通過(guò)KVC的方式給Person和Dog的屬性賦值

//Person name

[self.p setValue:@"小明" forKeyPath:@"name"];

NSLog(@"self.p = %@",self.p.name);


//Person 私有屬性_age

[self.p setValue:@18 forKeyPath:@"personAge"];

[self.p loagAge];


[self.p setValue:@"dog" forKeyPath:@"dog.name"];

NSLog(@"self.d = %@",self.d.name);


輸出結(jié)果:

self.p = 小明

age = 18

self.d = dog

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

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

  • KVC(Key-value coding)鍵值編碼,單看這個(gè)名字可能不太好理解。其實(shí)翻譯一下就很簡(jiǎn)單了,就是指iO...
    朽木自雕也閱讀 1,709評(píng)論 6 1
  • 目錄:1.KVC用法;2.KVC和對(duì)象的setter、getter方法的區(qū)別;3.key和keyPath的區(qū)別;4...
    倫倫子_f7b3閱讀 694評(píng)論 0 1
  • KVC(Key-Value Coding) KVC最常見(jiàn)的兩個(gè)用途: 給私有的成員變量賦值(當(dāng)然公有的也可以)比如...
    ForeverYoung21閱讀 1,250評(píng)論 1 15
  • 時(shí)間,讓人著迷。回頭看過(guò)往,時(shí)光飛逝,很短;向前看未來(lái),路途漫漫,很長(zhǎng)。 引用一句形象的話(huà):人生就像在雪地里行走,...
    萬(wàn)能的船長(zhǎng)閱讀 1,327評(píng)論 0 0
  • 總目錄 伊日畢斯沉浸在難言的興奮之中,甚至作為指揮官的他也親自參與了劫掠活動(dòng)。 當(dāng)?shù)氐拿癖?jiǎn)直不堪一擊,也對(duì),俄日...
    幻想中圣人閱讀 405評(píng)論 3 6

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