有时候会奇怪在类里的.m文件怎么系统都会加上这么一段?
没错这就是延展了,延展的作用是定义一些私有方法,这里也可以定义全局变量。延展与类目的不同就是不用创建新的文件,直接在原文件上添加即可。
@interface ProductDetailViewController ()
{
}
@end
@implementation ProductDetailViewController
没错这就是延展了,延展的作用是定义一些私有方法,这里也可以定义全局变量。延展与类目的不同就是不用创建新的文件,直接在原文件上添加即可。
使用延展需要注意的几个问题:
1、如果括号里没有类目名,则认为延展里面的方法为全都必须实现,如果有名,则认为是可选实现。
2、虽然延展是给一个类定义私有方法,但是没有OC没有绝对的私有方法,其实还是可以调用,另外延展里面声明的变量只能在该类内部使用,外界访问不了。
3、如果是新建文件建的某类延展.h文件,则不能加实例变量。
注:从iOS 5开始,不用写延展也可以直接定义私有方法了。
推荐一篇详细的博文http://blog.csdn.net/zuoerjin/article/details/7859198