IOS Category不要重写原有类方法

本文探讨了为何在iOS开发中不应通过Category重写原有类方法,指出这可能导致Runtime行为不确定,并提供了Category的基本用法。建议通过继承来重写方法,以保持代码的稳定性和可维护性。
摘要由CSDN通过智能技术生成

原创Blog,转载请注明出处
blog.csdn.net/hello_hwc

总结出来一句话

如果要重写现有类的方法,请考虑使用继承。

-------
前言:
Category是一种向现有类中添加方法,而不需要继承或者改变现有类的方式。在IOS开发中,使用还是十分广发的。例如在CoreData中,用category来为NSManagedObject类添加适当方法。

FAQ:
为什么不直接把方法放到ViewController中?
因为,如果把这些代码都放到Controller中,会造成Controller过于臃肿,难以维护。


一 Category简介

类别可以建立在任何类的基础上,而不需要获得获得或者修改原有类的代码。类别添加的方法对于当前类和子类都可以访问。 在IOS Rumtime时候,类别的方法和原有类的方法并没有什么区别。

注意:
类别可以添加类方法和实例方法。虽然语法上支持添加属性,但是并不适合添加额外的属性,因为无法跟踪这些额外的属性。

Category举例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值