Categories (category) in addition to extending the class, the ability to forward references is also strong. For some private methods (no method declared within the. h file) If we want to use it, some use performselector to perform a dynamic call, so that the private method can be called completely, but it is not always a good way to avoid the compiler's syntax checking. Using categories to make forward references can solve this problem.
Define an item class
@interface zjitem:nsobject-(void) info; @end
. m file
@implementation zjitem-(void) info{ NSLog (@ "This is in the interface section");} -(void) myprivate{ NSLog (@ "own method");} @end
We make the call in the main function. First forward referencing without using analogies
You can see the error message.
Error disappears after adding a forward reference
Forward references for iOS development categories