【非凡程序員】 OC第九節課 (KVC的基本使用語法)

今天主要學習了
1.關鍵字@synthesize
咱們使用@property定義屬性以後,有時候咱們不想定義屬性爲_開頭的參數名,
若是咱們想修改這個屬性的名稱,就可使用@synthesize關鍵字來對屬性名稱進行修改函數

2.點語法
①能夠用做set和get調用
Person *person1=[[Person alloc]init];
person1.name="zhang"; //用法和[person1 setName:"zahng"]同樣;
NSLog("name:%",person1.name);
②在CGpoint、CGsize、CGrent的使用中學習

3.KVC用法(簡化代碼)
①:Person.m文件中
//經過傳進來的屬性和屬性值進行set和get
-(void ) mainF :(NSString *)key :(NSString *)value {
[self setValue:value forKey:key ];
NSLog("%",[self valueForKey:key]);
}
main.m函數中:
//屬性和屬性值經過傳進去,進行set和get
Person *person1=[[Person alloc]init];
[person1 mainF:"name" :"zhang"];
[person1 mainF:"age" :"66"];
②main.m函數中:
person1.name="zhang";
Dog *dog=[[Dog alloc]init];
dog.name="zangao";
[person1 setDog:dog];ui

//經過人對象改狗的名字 [person1 setValue:"xiaohei" forKeyPath:"dog.name"]; NSLog("狗名:%",[person1 valueForKeyPath:"dog.name"]);//直接修改人的名字 [person1 setValue:"gaohui" forKeyPath:"name"]; NSLog("人名:%",[person1 valueForKeyPath:"name"]);code

相關文章
相關標籤/搜索