1.类别Category
类别相当于.net中的扩展方法,方便于开发人员不需要重新添加类继承
2.方法定义与使用
(1)实现方法
-(int)methodNameWithWidth:(int) width Height:(int) height; [self methodNameWithWidth:100 Height:50];
(2)类方法(静态方法)
+(int)methodNameWithWidth:(int) width Height:(int) height; [ClassName methodNameWithWidth:100 Height:50];
3.协议
协议类似于.net中的接口,只定义了方法名参数和返回值,没有具体的实现。
定义:
@protocol ProtocolName -(type) methodName:(type) paramName; @optional //选择实现的方法 -(type) methodName1:(type) paramName; @required//必须实现的方法 -(type) methodName1:(type) paramName; @end
使用:
@interface ClassName:NSObject<协议1,协议2...>
多个协议用逗号隔开。