iOS基础知识之类别

本类从三个方面介绍iOS中的类别,分别是  什么是类别;类别的语法;类别的作用。具体内容如下:

一、类别:

类的补丁:当不能获取现有类的源码,但需要对现有类的功能进行补充时,这种情况下使用类别。

类别只能添加方法,不能添加成员变量。

类别中不提倡使用@property,@property在类别中使用时,不能生成对应的私有变量,因为类别中不能声明成员变量。

例如:对NSString进行加密MD5,这种情况下不能获取NSString的源码,但需要为其添加加密功能,则可以使用类别实现。

二、类别语法

1 @interface class_name (category_name)
2 
3 @end

例如:

1 @interface NSString (HelloWOrld)
2 - (void)helloWorld;
3 @end
4 
5 @implementation NSString (HelloWOrld)
6 - (void)helloWorld {
7   NSLog(@"hello world....");
8 }
9 @end

表示通过类别为现有类NSString添加helloWorld方法。

1 NSString *str = @"zhang";
2 [str helloWorld];

 

iOS中实现类别的关键步骤如下:

1.选择Objective-C File,点击next.

2.在File中填写类别名称,在File Type中选择Category,在Class中选择需要进行扩展的现有类,最后点击next。

 

三、类别的作用
1.使用类别为一个类的“隐藏方法,即未在.h中声明的方法”添加声明。

2.分散一个大型的类,即当类中的方法过多时,可以将方法的声明和实现放到类别中实现,从而达到分散一个大型类的作用。

注意:类别方法的优先级比类本身方法的优先级要高,即类别和类本身中拥有相同的方法时,有限调用类别内的方法。

3.创建非正式协议,类似Java中的接口。

 

posted on 2017-02-19 22:29 bky2016 阅读( ...) 评论( ...) 编辑 收藏

转载于:https://www.cnblogs.com/calence/p/6417558.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值