Hallo Leute ich weiß nicht wo der Fehler liegt.
--------------------------------
#import "Instrument.h"
@interface Piano : Instrument
@property (copy) NSNumber* keyCount;
@end
---------------------------------
#import <Foundation/Foundation.h>
#import "Instrument.h"
#import "Guitar.h"
#import "Piano.h"
int main(int argc, const char * argv[])
{
Instrument *anInstrument;
@autoreleasepool {
// Klavier erzeugen
Piano *aPiano =[[Piano alloc]init];
aPiano.name = @"ein Klavier";
aPiano.age = 0;
aPiano.price = 2000;
aPiano.keyCount =[NSNumber numberWithInt:42];
//Ein Klavier
anInstrument = [[Piano alloc]init];
anInstrument.name = @"ein Klavier";
anInstrument.age = 0;
anInstrument.price = 2000;
if ([anInstrument isKindOfClass:[Piano class]]) {
Piano *aPiano = (Piano*)anInstrument;
NSLog(@"Klavier mit %@ Tasten",aPiano.keyCount);
}
NSLog(@"Wir haben %@", anInstrument.name);
NSLog(@"Alter %ld und Preis %ld", anInstrument.age, anInstrument.price);
NSLog(@"Klavier mit %@ Tasten",aPiano.keyCount);
}
return 0;
}
und bekomme diese Ausgabe:
2013-06-07 17:51:57.424 kap_03_1[1027:303] Klavier mit (null) Tasten Wieso NUll und nicht die Tastenzahl?
2013-06-07 17:51:57.425 kap_03_1[1027:303] Wir haben ein Klavier
2013-06-07 17:51:57.426 kap_03_1[1027:303] Alter 0 und Preis 2000
2013-06-07 17:51:57.426 kap_03_1[1027:303] Klavier mit 42 Tasten
--------------------------------
#import "Instrument.h"
@interface Piano : Instrument
@property (copy) NSNumber* keyCount;
@end
---------------------------------
#import <Foundation/Foundation.h>
#import "Instrument.h"
#import "Guitar.h"
#import "Piano.h"
int main(int argc, const char * argv[])
{
Instrument *anInstrument;
@autoreleasepool {
// Klavier erzeugen
Piano *aPiano =[[Piano alloc]init];
aPiano.name = @"ein Klavier";
aPiano.age = 0;
aPiano.price = 2000;
aPiano.keyCount =[NSNumber numberWithInt:42];
//Ein Klavier
anInstrument = [[Piano alloc]init];
anInstrument.name = @"ein Klavier";
anInstrument.age = 0;
anInstrument.price = 2000;
if ([anInstrument isKindOfClass:[Piano class]]) {
Piano *aPiano = (Piano*)anInstrument;
NSLog(@"Klavier mit %@ Tasten",aPiano.keyCount);
}
NSLog(@"Wir haben %@", anInstrument.name);
NSLog(@"Alter %ld und Preis %ld", anInstrument.age, anInstrument.price);
NSLog(@"Klavier mit %@ Tasten",aPiano.keyCount);
}
return 0;
}
und bekomme diese Ausgabe:
2013-06-07 17:51:57.424 kap_03_1[1027:303] Klavier mit (null) Tasten Wieso NUll und nicht die Tastenzahl?
2013-06-07 17:51:57.425 kap_03_1[1027:303] Wir haben ein Klavier
2013-06-07 17:51:57.426 kap_03_1[1027:303] Alter 0 und Preis 2000
2013-06-07 17:51:57.426 kap_03_1[1027:303] Klavier mit 42 Tasten