如果在.h文件中我们要用到某个类那么我们就用@class引入声明是一个类,而不用#import,因为在声明的时候并不需要了解引入类的成员变量和方法,等在.m文件中实际用到方法和成员变量的时候再用#import导入,因为#import是完全拷贝,会包含所有信息,会造成性能下降,而如果是继承某个类,就要使用#import导入继承类所在的头文件,因为要知道类里面声明的方法,避免重复声明和父类同样的方法和成员变量。
如果很多文件都#import了同一个文件,当这个文件发生变化后,所有包含了该文件的文件都要进行重新编译,而使用@class不会。
递归包含的时候使用#import,如A引用B,B引用A会编译错误。