Objective-C跟C以及C++一样采用“头文件.h”与“实现文件.m”来区隔代码:
// Person.h头文件
#import <Foundation/Foundation.h>
@interface Person : NSObject
/** firstName */
@property (nonatomic, copy) NSString *firstName;
/** secondName */
@property (nonatomic, copy) NSString *lastName;
@end
// Person.m实现文件
#import "Person.h"
@implementation Person
// 具体的方法的实现
@end
上述代码中#import <Foundation/Foundation.h>
可以看出,在Objective-C中,通常使用#import
来引用某个类或者框架的头文件,这样做可以获取到头文件中的全部信息(暴露在头文件里的属性和方法)。但有时在引用某个类时不需要知道此类的全部细节,此时可以使用@class Person
的写法,此写法直接告诉编译器:“嘿,有一个类叫Person
,你不要报错!”
另外使用@class Person
的写法还有一个好处:避免“循环引用”(Page6举例说明)。
网友评论