//@property(nonatomic,readonly) UITabBar *tabBar 虽然是只读的 但是可以生成一个下划线的成员变量
我们想要更换系统自带的tabbar
这句话是错误的执行不了 因为 tabBar 这个系统属性是 只读的
self.tabBar =[ [QHTabbar aloc]init];
但是我们可以利用KVC 来改变 这个值 来让我们使用
[self setValue:[[QHTabBar alloc]init] forKeyPath:@"tabBar"];
例如:
Person *p =[[Person alloc]init];
p.name = @"jack";
[p setValue:@"jack" forKeyPath:@"name"];