如果属性需要是私有的并且语言支持自动getter / setter方法创建,那么应该如何声明属性呢?
是否可以根据需要覆盖自动创建的getter或setter?
答案 0 :(得分:3)
在.m(实现)文件的顶部:
// Private category on your class, declared at top of implementation file.
@interface MyClass ()
@property (nonatomic, copy) NSString * privateString;
@end
@implementation
...
@end
这些“私有属性”仅在您的实现中可见。 请注意 ObjC没有运行时访问限制功能。如果他们想要,其他对象仍然可以调用您的私有getter和setter(虽然这会生成编译器警告)。