1

我是 Objective C 的新手,虽然我有一些 Java 反射的背景。

在这里,我有一个经典的类方法findAll,它从数据库中查找所有域对象。Univers类直接继承自DomainObject

@interface DomainObject : NSObject

  - (NSString *) execute : (NSString*) method  withJson:(NSString*)json;
  + (NSString*)findAll: (NSString*)json;

@end

@implementation DomainObject

  - (NSString *) execute: (NSString*) method  withJson:(NSString*)json{

      method = [NSString stringWithFormat:@"%@%@", method, @":"]; 
      //method is 'findAll:'
      NSString* result =  [ self performSelector: 
          NSSelectorFromString(method) withObject:json];// Error here
      return result;    
  }
@end

当 findAll 不是类方法(即 -findAll 声明)时,代码正在工作,但现在我有错误: NSInvalidArgumentException -[Univers findAll:] 显然运行时正在寻找一个实例方法。

有什么想法可以找到我的课堂方法吗?

4

1 回答 1

5
于 2012-06-06T14:55:36.627 回答