ios类别(Category)与扩展(Extension)

本文介绍了Objective-C中的类别概念,类别允许在现有类中添加新方法而不修改原始类。这有助于扩展系统的功能,并且能够避免代码冗余。文章强调了类别的一些限制,如不能添加成员变量,以及如何解决方法名冲突等问题。

  Objective-C语言的新物性,类别(categories)允许在现有的类中添加用户自己的方法,有时我们需要在一个已经定义好的类中增加一些方法,而不想去重写该类。比如,当工程已经很大,代码量比较多,或者类中已经包住很多方法,已经有其他代码调用了该类创建对象并使用该类的方法时,可以使用类别对该类扩充新的方法。

注意:1.类别只能扩充方法,而不能扩充成员变量。

          2.名称冲突,即类别中的方法与现有方法重名。当发生名称冲突时,类别具有更高的优先级。可以在自己的类别方法名中增加一个前缀,以确保不发生名称冲突。


 

Category在iOS开发中使用非常频繁。尤其是在为系统类进行拓展的时候,我们可以不用继承系统类,直接给系统类添加方法,最大程度的体现了Objective-C的动态语言特性。

 

obj-c的作用:

通过类别的方式,可以将类的实现分散到不同的文件里。

 

类别是一种为现有的类添加新方法的方式。


类别是一种为现有的类添加新方法的方式。
参考http://yul100887.blog.163.com/blog/static/20033613520126333344127/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值