1
Ich habe eine Abfrage in Bezug auf Unterklasse & Änderung Instanzvariable in Objective-C.Veränderliche Variable in Unterklasse
Angenommen, ich habe Klasse sagen A mit .h & .m
@interface A : NSObject
@property(nonatomic, retain) NSString *myVariable;
@end
@implementation A
-(void)viewDidLoad
{
[super viewDidLoad];
[email protected]"123";
}
@end
A hat zwei Unterklassen Say B & C
@interface B : A
{
}
@end
@implementation B
-(void)viewDidLoad
{
[super viewDidLoad];
self.myVariable = @"Modified Here";
}
@end
Wenn ich jetzt versuchen, zuzugreifen 'myVariable' in der Unterklasse C
@interface C : A
{
}
@end
@implementation C
- (void)viewDidLoad
{
[super viewDidLoad];
NSLog(@"Value is : %@",self.myVariable);
}
@end
In log gefunden i Wert: 123
Kann jemand mir helfen, zu verstehen, warum ich nicht aktualisierter Wert von var bekommen 'myVariable', die in der Klasse B. modifiziert wird
Weil 'C' nichts über' B' weiß. Es spielt keine Rolle, dass sie einen gemeinsamen Vorfahren haben. Nichts für ungut, aber es scheint, dass Sie über objektorientierte Programmierung und ihre Prinzipien nachlesen sollten. – Losiowaty
Sie protokollieren den Wert in C, der von A erbt. Sie erhalten den in A initialisierten String-Wert. –
Wenn Sie C von B erben, wäre das eine andere Sache – Paulw11