KVC简单介绍

来源:互联网 发布:51单片机驱动风扇 编辑:程序博客网 时间:2024/05/21 14:41
     //实例化一个老师    Teacher *t1=[[Teacher alloc] init];            //KVC工作流程    //KVC首先检车类中是否有getter,setter方法.    //如果没有就去找有没有和key相同名字的实例变量.    //如果也米有,就去找有没有和_key相同名字的实例变量.        //第一个方法是用来设置值的    [t1 setValue:@"仓老师" forKey:@"name"];    //第二种方法是用来取值的    NSLog(@"%@",[t1 valueForKey:@"name"]);        [t1 setValue:@18 forKey:@"age"];    NSLog(@"%@",[t1 valueForKey:@"age"]);            Student *s1=[[Student alloc] init];    [t1 setValue:s1 forKey:@"stu"];                //第三种, 设置值        [t1 setValue:@"大师兄" forKeyPath:@"stu.name"];        //第四种 取值    NSLog(@"%@",[t1 valueForKeyPath:@"stu.name"]);            //第五种    NSDictionary *dict=@{@"name": @"唐僧",@"age":@20,@"stu":s1,@"1":@"a"};        [t1 setValuesForKeysWithDictionary:dict];        NSLog(@"%@",t1.name);    NSLog(@"%ld",t1.age);    NSLog(@"%@",t1.stu.name);        //第六种p
//第六种-(void)setValue:(id)value forUndefinedKey:(NSString *)key{    NSLog(@"%@是个演员,没有找到",key);}


0 0
原创粉丝点击