#import和@class的区别
来源:互联网 发布:linux怎么复制文件内容 编辑:程序博客网 时间:2024/05/29 03:16
引用一个类可以通过#import引入,也可以通过@class引入,这两种方式的区别在于
一.使用方法
1)#import 方式会包含被引用类的所有信息,包括被引用类的变量和方法;
@class 方式只是告诉 编译器在A.h 文件中 B *b 只是类的声明,具体这个类里有什么信息,这里不需要知道,等实现文 件中真正要用到时,才会真正去查看B 类中信息;
2)使用@class方式由于只需要只要被引用类(B类)的名称就可以了,而在实现类由于要用到被 引用类中的实体变量和方法,所以需要使用#import来包含被引用类的头文件;
3)通过上面2 点也很容易知道在编译效率上,如果有上百个头文件都#import了同一 个文件,或 者这些文件依次被#improt(A->B, B->C,C->D...),一旦最开始的头文件稍有改动,后面引用到这 个文件的所有类都需要重新编译一遍,这样的效率也是可想而知的,而相对来 讲,使用@class方 式就不会出现这种问题了;
二.作用上的区别
#import 会包含引用类的所有信息(内容),包括引用类的变量和方法 @class仅仅是告诉编译器有这么一个类,具体这个类里有什么信息,完全不知
三.效率上
如果有上百个头文件都#import了同一个文件,或者这些文件依次被#import,那么一旦最开始的头文件稍有改动,后面引用到这个文件的所有类都需要重新编译一遍, 编译效率非常低 相对来讲,使用@class方式就不会出现这种问题了
0 0
- #import和@Class的区别
- @class和#import的区别
- @class 和 #import 的区别
- @CLASS 和 #IMPORT 的区别
- @import和@class的区别
- @class和#import的区别
- #import和@class的区别
- #import和@class的区别
- import和@class的区别
- @class和#import的区别
- 总结:#import和#include区别 #import和@class的区别 #import<>和#import""的区别
- #import和#include区别 #import和@class的区别 #import<>和#import""的区别
- @Class和import区别
- @class 和 #import 区别
- 关于#import和@class的区别
- 关于#import和@class的区别
- #import、#include和@class的区别
- 关于#import和@class的区别
- ref 和out以及params参数详解
- 通用的自定义BaseActivity类,集成多种基本功能
- Webdriver Ui自动化测试,使用工厂方法生产不同浏览器的webdriver实例
- 百度地图v3.6.1接入1--基本地图功能
- CentOS7.1下python2.7.10安装PyQt4
- #import和@class的区别
- Java 调用构造器会不会一定产生新对象
- iOS文件目录结构
- 日志系统设计(一)&(二)
- maven pom.xml详解
- Redis中的事务
- centos6.5下docker学习笔记
- linux =》 Linux操作系统下软件的安装方法大全
- WebView 调用js ,混淆后不起作用