Objective c 创建类别获取错误“;无法为未定义的类定义类别";

Objective c 创建类别获取错误“;无法为未定义的类定义类别";,objective-c,objective-c-category,Objective C,Objective C Category,当我尝试创建自己的简单类的2个类别(类名为Car)时,我遇到了一个问题。我为这个类创建了两个类别,只是为了测试“Car+show.h”和“Car+Protected.h”。我只是写了一些非常小的方法,比如NSLog 我的问题是,当我构建应用程序时,我在类别文件中得到错误“无法为未定义的类别定义类别”。请告诉我哪里错了。 我碰巧解决了我的问题。我真的不知道那件事的真实情况。 关键是,当我将该类别文件导入Car.h文件时,我与您共享了创建错误。但当我只导入同一个文件和Car.m文件时,它就可以正常工

当我尝试创建自己的简单类的2个类别(类名为Car)时,我遇到了一个问题。我为这个类创建了两个类别,只是为了测试“Car+show.h”和“Car+Protected.h”。我只是写了一些非常小的方法,比如NSLog

我的问题是,当我构建应用程序时,我在类别文件中得到错误“无法为未定义的类别定义类别”。请告诉我哪里错了。

我碰巧解决了我的问题。我真的不知道那件事的真实情况。 关键是,当我将该类别文件导入Car.h文件时,我与您共享了创建错误。但当我只导入同一个文件和Car.m文件时,它就可以正常工作了

我真的不知道为什么在我将该类别文件导入到.h文件时会出现create错误。请解释为什么会出错


感谢Mukesh

如果您将类别头文件导入到
Car.h
,并且您的类别头文件本身导入
Car.h
,则您会遇到一个问题

类别用于向类添加功能或将接口拆分为多个标题。如果您正在将类别标题导入到主类标题中,那么这就违背了这一点


类别标题只应包含在需要使用类别中定义的功能的文件中

谢谢你的回答。我又有一个这样的问题,我有Car类的子类(@interface SecondCar:Car)。当我通过这两个类别扩展汽车等级时。该子类是否会访问定义到该类中的所有方法,而不将这些类文件导入子类(SecondCar.m)中呢