-
手动实现set/get方法;
-
知识点:关联对象。
.h
@interface Person (Test)
@property (copy, nonatomic) NSString *name;
@end
.m
#import <objc/runtime.h>
- (void)setName:(NSString *)name {
// @selector(name) 在此处的作用是作为一个 key
objc_setAssociatedObject(self, @selector(name), name, OBJC_ASSOCIATION_COPY_NONATOMIC);
}
- (NSString *)name {
// 隐式参数
// _cmd == @selector(name)
return objc_getAssociatedObject(self, _cmd);
}
网友评论