Objective-C Language                
            Eredità
        
        
            
    Ricerca…
Sintassi
- @interface derivate-class-Name: base-class-Name
L'auto è ereditata dal veicolo
Si consideri un veicolo classe base e la sua classe derivata auto come segue:
#import <Foundation/Foundation.h>
 
@interface Vehicle : NSObject
{
    NSString *vehicleName;
    NSInteger vehicleModelNo;
}
- (id)initWithName:(NSString *)name andModel:(NSInteger)modelno;
- (void)print;
@end
@implementation Vehicle
- (id)initWithName:(NSString *)name andModel:(NSInteger)modelno{
    vehicleName = name;
    vehicleModelNo = modelno;
    return self;
}
- (void)print{
    NSLog(@"Name: %@", vehicleName);
    NSLog(@"Model: %ld", vehicleModelNo);
}
@end
@interface Car : Vehicle
{
    NSString *carCompanyName;
}
- (id)initWithName:(NSString *)name andModel:(NSInteger)modelno 
  andCompanyName:(NSString *)companyname;
- (void)print;
@end
@implementation Car
- (id)initWithName:(NSString *)name andModel:(NSInteger) modelno 
  andCompanyName: (NSString *) companyname
  {
    vehicleName = name;
    vehicleModelNo = modelno;
    carCompanyName = companyname;
    return self;
}
- (void)print
{
    NSLog(@"Name: %@", vehicleName);
    NSLog(@"Model: %ld", vehicleModelNo);
    NSLog(@"Company: %@", carCompanyName);
}
@end
int main(int argc, const char * argv[])
{
    NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];        
    NSLog(@"Base class Vehicle Object");
    Vehicle *vehicle = [[Vehicle alloc]initWithName:@"4Wheeler" andModel:1234];
    [vehicle print];
    NSLog(@"Inherited Class Car Object");
    Car *car = [[Car alloc]initWithName:@"S-Class" 
    andModel:7777 andCompanyName:@"Benz"];
    [car print];        
    [pool drain];
    return 0;
}
Quando il codice sopra è compilato ed eseguito, produce il seguente risultato:
29-09-2016 18: 21: 03.561 Ereditarietà [349: 303] Oggetto di base della classe Veicolo
29-09-2016 18: 21: 03.563 Ereditarietà [349: 303] Nome: 4Wheeler
29-09-2016 18: 21: 03.563 Ereditarietà [349: 303] Modello: 1234
2016-09-29 18: 21: 03.564 Ereditarietà [349: 303] Oggetto auto di classe ereditata
29-09-2016 18: 21: 03.564 Ereditarietà [349: 303] Nome: Classe S
29-09-2016 18: 21: 03.565 Ereditarietà [349: 303] Modello: 7777
29-09-2016 18: 21: 03.565 Eredità [349: 303] Azienda: Benz
Modified text is an extract of the original Stack Overflow Documentation
        Autorizzato sotto CC BY-SA 3.0
        Non affiliato con Stack Overflow