@interface
2、实现
@implementation
3、文件名
NSString+CSayHi
类目:
类目也成为分类(特征)
1、可以为已知的类添加方法,哪怕是你没有源代码的类;
2、通过类目添加方法会成为原始类的一部分;
3、与原类中的方法同级;
4、而且会被子类继承;
类目的用处:
1、可以扩展别人的类,可以作为子类的替代方式;
2、把同一个类的代码放到多个文件中,便于多人协作。
注意:
1、不能在类目中添加实例变量;
(category,不可以有私有变量,但是可以有@property的声明,property的声明只是声明了该类的set,get方法(需要引用该category的头文件),但是category实现的m文件里面根本就没有生成这两个方法,所以你使用self.xxx时,会挂掉,错误提示:没有get/set方法。
你在category的m文件里面@synthesize 也无法声明.
也就是说,有声明,无实现。)
2、可以为同一类添加多个类目,但类目名和方法名不能重复。
3、不要随意重写类中的方法(避免其原始程序的失效)
延展:
延展是一种特殊形式的类目。
1、编写在类的实现文件中;
2、延展中定义的方法在类本身中实现。
作用:
定义私有方法。
注意:
延展不写类目名时,表示延展中定义的方法,必须实现。
如果提供了类目名称,则可以选择性实现。
@interface People :