Object-c中的Category特性全部在此.

本文介绍了Objective-C中Category的概念及使用方式。Category允许开发者为现有类添加新方法,但不能重写原有方法。要重写方法,需通过子类实现。
apple文档中了解到Object-c的Category的作用仅有一个:
* 向现有的类中添加方法(添加任意个数)

// NSString+log.h
@interface NSString (log)
-(void) log;
@end


// NSString+log.m
@implementation NSString (log)
-(void) log {
    NSLog(@"log!");
}
@end

就这样, 就实现了向NSString 类中添加了log方法.


Category 是不可以重写原始类的方法的, 比如

@interface NSOperation(main)
-(void) main;
@end

@implementation NSOperation(main)

-(void) main{ //这里会有一个警告: "Category is implementing a method which will also be implemented by its primary class"
    
}
所以,  这里要想重写main方法, 就必须在子类中重写. (Object-c只支持单继承).

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值