新手提问:Objective-C中在@implementation上加一个@interface的有什么不同?
伊谢尔伦
伊谢尔伦 2017-04-21 11:16:01
0
2
602

新手提问,看别人的代码是这样写的:

@interface FirstViewController() 
-(void)timerOnActive;
-(void)getDataFromCD;
@end

@implementation FirstViewController
@synthesize userID;
@synthesize timer;

上面的代码是写在.m文件里的,我的问题是为什么不把

@interface FirstViewController() 
-(void)timerOnActive;
-(void)getDataFromCD;
@end

写在.h文件的@interface中? FirstViewController() 后面的那个括号是空的,需要填什么吗?这样写是为了补充吗?

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

répondre à tous(2)
Peter_Zhu

Le @interface FirstViewController() est ici en fait une extension de classe, tout comme une catégorie anonyme. Les méthodes qu'elle déclare doivent être implémentées dans le bloc de code principal @implementation de la classe correspondante. Une classe peut avoir une déclaration publique L'API. dispose également de méthodes supplémentaires déclarées comme privées pour être utilisées uniquement par la classe ou la classe framework. Vous pouvez déclarer une telle méthode en utilisant une catégorie (ou plusieurs catégories) dans un fichier d'en-tête privé ou un fichier d'implémentation mentionné ci-dessus. Cela fonctionne, mais le compilateur ne peut pas confirmer que toutes les méthodes déclarées sont implémentées.

小葫芦

La méthode écrite dans le fichier m ne peut pas être appelée par des classes externes. Cette méthode est traitée comme une méthode privée et appelée au sein de cette classe. Il est caché du monde extérieur.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal