object c 非常强大的类的属性复制kcv键值码赋值

//
//  main.m
//  KVC
//
//  Created by 千雅爸爸 on 16/10/6.
//  Copyright © 2016年 kodulf. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "User.h"
int main(int argc, const char * argv[]) {
    @autoreleasepool {
        //可以很方便的完成类中属性的复制操作,
        //同时即使是隐藏的属性也是可以kvc来完成设置的。
        
        User *user = [[User alloc] init];
        [user setValue:@"xiaoming" forKey:@"username"];
        [user setValue:@"ibm" forKey:@"company"];
        [user setValue:@20 forKey:@"age"];
        [user setValue:@"male" forKey:@"sex"];
        NSLog(@"%@",user);
        
    }
    return 0;
}





//
//  User.h
//  KVC
//
//  Created by 千雅爸爸 on 16/10/6.
//  Copyright © 2016年 kodulf. All rights reserved.
//

#import <Foundation/Foundation.h>
@interface User : NSObject

@property(nonatomic,copy) NSString *username;
@property(nonatomic,copy) NSString *company;
//@property(nonatomic,assign) NSInteger age;
//为了方便可以写setvalue forkey的方法,这里使用strong,并且是NSNumber类型
@property(nonatomic,strong) NSNumber *age;


@end

//
//  User.m
//  KVC
//
//  Created by 千雅爸爸 on 16/10/6.
//  Copyright © 2016年 kodulf. All rights reserved.
//

#import "User.h"

//匿名的类别,添加一个隐藏的属性,注意这里要写User
@interface User ()
@property (nonatomic,copy) NSString *sex;
@end

@implementation User

- (NSString *)description
{
    return [NSString stringWithFormat:@"name=%@,company=%@,age =%@,sex=%@", _username,_company,_age,_sex];
}

@end



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值