Если у вас есть свойство в вашем общедоступном интерфейсе, подобное приведенному ниже
@interface MyClass : NSObject
@property(strong) NSString *myProp;
@end
А затем синтезируйте его, фактически синтезируя переменную:
@implementation MyClass
@synthesize myProp = _myProp; // or just leave it at the default name..
@end
Какова видимость переменной экземпляра _myProp
? То есть считается ли это @public
, @protected
или @private
? Я предполагаю, поскольку MySubClass
может наследовать от MyClass
, тогда он также получит свойства (естественно), но будет ли он также наследовать видимость переменной экземпляра?
Какая разница в этом. сделать, если я помещу свойство в расширение класса? Это скроет свойство от подклассов, и я предполагаю, что и переменная экземпляра. Это где-нибудь задокументировано?