So habe ich eine Kategorie auf NSObject CustomCategory genannt, wie folgend:Kategorie auf NSObject funktioniert auch auf Klasse
#import <Foundation/Foundation.h>
@interface NSObject (CustomCategory)
-(BOOL)doSomething;
@end
#import "NSObject+CustomCategory.h"
@implementation NSObject (CustomCategory)
-(BOOL)doSomething
{
NSLog(@"Done");
return NO;
}
@end
Idealerweise diese auf ein Objekt wie dies funktionieren wird:
NSObject* object = [NSObject new];
[object doSomething];
jedoch ich fand, dass es auch ohne Probleme auf diese Weise funktioniert:
[NSObject doSomething];
So frage ich mich, da es eine Instanzmethode ist Ich habe über die Kategorie hinzugefügt, warum es auch an einer Klasse funktioniert?
Zeigen Sie den Deklarations- und Definitionscode der Kategorie an. – zaph
durch die Arbeit Sie meinen, dass es kompiliert oder dass es den Code innerhalb DoSomething –
Alle Klassen sind auch NSObjects (außer vielleicht NSProxy). – user3125367