1.创建扩展
分类(category)的作用
1.可以再不修改原来的基础上,为一个类扩展方法
2.最主要的用法:给系统自带的类扩展方法
分类介绍
1.分类中只能添加方法,不能增加成员变量
2.分类中可以访问原来类中的成员变量,但是只能访问@protect和@public形式的变量。如果想要访问本类中的私有变量,分类和子类一样,只能通过方法来访问。
3.如果一定要在分类中添加成员变量,可以通过getter、setter手段进行添加
分类的形式
假设我们有一个类 ,叫Person,在Person类中定义了一个方法-(void)eat。人有很多的共同点,也有很多的不同点,比如并不是每个人都会踢足球,这是我们写一个分类,给喜欢运动的人,这个分类的名字就叫Sport,因为是Person的分类,实际生成的文件名是Person+Sport
分类的使用过程
声明分类->实现分类->使用分类
分类的执行优先级
1.在本类和分类有相同的方法时,优先调用分类的方法再调用本类的方法。
分类(category)和类扩展(extension)的关系
1.类扩展(extension)是category的一个特例,有时候也被称为匿名分类。他的作用是未一个类 添加一些私有的成员变量和方法。
类扩展写法
@interface ViewController()//这就是类扩展的写法
@end