Unterschied zwischen dem Zugriff auf Eigenschaftsmethoden und Klassenfelder (Objective-C)
Angenommen, ich habe diesen Code:
@interface Foo : NSObject {
Bar *bar;
}
@property (retain, nonatomic) Bar *bar;
@end
Gibt es bei Verwendung dieses Feldes / dieser Eigenschaft einen Unterschied zwischen den Zeilen:
[self.bar doStuff];
und
[bar doStuff];
?
Bei der Zuweisung führt die Eigenschaftsmethode eine korrekte Aufbewahrung durch. Wie sieht es jedoch mit dem Lesezugriff auf die Eigenschaft aus, wie oben beschrieben? Gibt es da einen Unterschied?