iOS 类别和扩展的区别
来源:互联网 发布:中国多重人格案例 知乎 编辑:程序博客网 时间:2024/05/23 16:15
之前一直对类别和扩展傻傻分不清楚,今天在网上看了一些资料 自己又整理了一下,在这记录下来分享给大家.
类别: 不通过继承的方式对原有类添加或修改方法.类别的定义和类的定义有相似之处,都是用关键字@interface和类名来定义,不同之处在于类别的定义是在类名之后不是类所继承的父类,而是用括号括起来的类别名。@end之前的方法定义和类中方法的定义是一样的。
ex:
@interface Person (People)
-(void)eat;
@end
1. 是对原有类的扩充,
2.对原有类的分散
3.可以声明私有方法
4.不能添加实例变量
创建类别的三种方式:
1. 在其他类文件中可以声明
2.在本类中声明类别
3.可以单独创建类别文件
````````````````````````````````````````````````
类的扩展:类扩展跟类别的定义有点像,类扩展有点像无名的类别。
ex:
@interface Person ()
@property (nonatomic, strong) NSString *name;
-(void)name;
@end
1.可以扩展私有的实例变量和方法
扩展的创建方式
1.直接在本类中创建
2.可以单独创建扩展文件
0 0
- iOS 类别和扩展的区别
- ios中类别和扩展的区别
- ios 类别和扩展
- ios 类别和扩展
- ios 类别和扩展
- 类别和类扩展的区别
- 类别和类扩展的区别
- 类别和类扩展的区别
- 类别和类扩展的区别
- 类别和类扩展的区别
- 类别和类扩展的区别
- Category(类别)和扩展(Extension)的区别
- iOS类别的扩展
- iOS 类别 (category)和 类扩展 (extension)的区别
- iOS类别和类扩展
- ios 类别和类扩展
- ios类别和继承的区别
- 类别,类扩展的区别
- Spark pipe 实例
- 测试人员的绩效考核应该如何开展?
- AppDelegate详解
- MySQL 5.6 一主多从的 半同步复制搭建(已纠正)
- 检测TCP端口占用状态的函数
- iOS 类别和扩展的区别
- Android Activity的lauchmod的理解
- Cordova-Android 插件开发
- 堆排序
- Android之ListView的高级封装!
- 设置PDO的错误处理模式
- DLAN(UPNP)主流开源库的官网及SDK下载地址
- RNNLM的使用方法
- ZOJ 1638 Greedy Island