我有两个类 Class1 和 Class2。Class2 继承自 Class1.Class2 包含一个在 Class1 中不存在的更新方法。
我在 ios 7 中发现崩溃 - [Class1 更新] 发送到实例的无法识别的选择器。 这是不可重现的。 任何人都可以建议我的代码调用中出了什么问题。
+(Class1*)sharedobject{
static dispatch_once_t once;
static Class1 *sharedView;
dispatch_once(&once, ^ {
sharedView = [[self alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
});
return sharedView;}
Class2: Class1{
-(void)update {
}
}
Class2 *obj = [self sharedobject];
[OBJ 更新];
请注意,sharedobject
返回 Class1 的对象。您说update
方法仅存在于 Class2 中。然而,你已经写了Class2 *obj = [self sharedobject];
,然后试图打电话给update
。您已在类 1 的对象上调用了一个在类 1 中不存在的方法。这就是您收到无法识别的选择器异常的原因。