2009-05-06 7 views
1

Dans le AppDelegate de l'exemple BubbleLevel d'Apple ils font quelque chose comme ceci:Pourquoi devrais-je vérifier [self class] == [LevelAppDelegate class] dans une méthode d'initialisation?

+ (void)initialize { 
    if ([self class] == [LevelAppDelegate class]) { 
     // Register a default value for the instrument calibration. 
     // This will be used if the user hasn't calibrated the instrument. 
     NSNumber *defaultCalibrationOffset = [NSNumber numberWithFloat:0.0]; 
     NSDictionary *resourceDict = [NSDictionary dictionaryWithObject:defaultCalibrationOffset forKey:BubbleLevelCalibrationOffsetKey]; 
     [[NSUserDefaults standardUserDefaults] registerDefaults:resourceDict]; 
    } 
} 

Pourquoi font-ils que [self classe] == [classe LevelAppDelegate]?

Répondre