码迷,mamicode.com
首页 > 其他好文 > 详细

#import、#include、@class、@protocol、@interface

时间:2015-12-23 21:11:50      阅读:228      评论:0      收藏:0      [点我收藏+]

标签:

#include

它用于对系统自带的头文件的引用,编译器会在系统文件目录下去查找该文件。(注意重复引用)

#import

Objective-C针对#include的改进版本,确保引用的文件只会被引用一次,不会陷入递归包含的问题中。

#import会链入该头文件的全部信息,包括实体变量和方法等。

#import<>用来包含系统自带的文件

#import""用来包含自定义的文件

@class

只是告诉编译器,其后面声明的名称是类的名称,不需要知道其内部的实体变量和方法。一般来说,@class是放在interface中的,只是为了在interface中引用这个类,把这个类作为一个类型来用的。 在实现这个接口的实现类中,如果需要引用这个类的实体变量或者方法之类的,还是需要import在@class中声明的类进来。

@protocol

Objective-C中的协议,本身不实现任何方法,只是声明方法,使用协议的类必须实现协议方法

关于delegate  protocol 网上有一个例子讲的非常形象:

我上班的工作主要内容包括 (1)写代码(2)写文档(3)测试程序(4)接电话(5)会见客户

(1)(2)我自己全权负责,但是后面(3)(4)(5)我不想或者不方便自己做,所以我想找个助手(delegate)帮我做这些事,于是我定了一个招聘要求(Protocol),里写明我的助手需要会做(3)(4)(5)这三件事。很快,我招到一个助手。

        即:我.delegate = 助手;

@interface

Objective-C中的接口,就是类的一个声明。

Objective-C中的类必须要有接口,但不一定都要有协议。

#import、#include、@class、@protocol、@interface

标签:

原文地址:http://www.cnblogs.com/sjxjjx/p/5071093.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!