iOS类别扩展和匿名类别扩展的区别
答案:2 悬赏:30 手机版
解决时间 2021-11-08 17:10
- 提问者网友:像風在裏
- 2021-11-07 23:54
iOS类别扩展和匿名类别扩展的区别
最佳答案
- 五星知识达人网友:枭雄戏美人
- 2021-11-08 01:09
类扩展 (Class Extension也有人称为匿名分类)
作用:
能为某个类附加额外的属性,成员变量,方法声明
一般的类扩展写到.m文件中
一般的私有属性写到类扩展
使用格式:@interface Mitchell()
//属性
//方法
@end
与分类的区别
分类的小括号中必须有名字
@interface 类名(分类名字)
@end
@implementation类名(分类名字)
@end
分类只能扩充方法,不能扩展属性和成员变量(如果包含成员变量会直接报错)。
如果分类中声明了一个属性,那么分类只会生成这个属性的set、get方法声明,也就是不会有实现。
作用:
能为某个类附加额外的属性,成员变量,方法声明
一般的类扩展写到.m文件中
一般的私有属性写到类扩展
使用格式:@interface Mitchell()
//属性
//方法
@end
与分类的区别
分类的小括号中必须有名字
@interface 类名(分类名字)
@end
@implementation类名(分类名字)
@end
分类只能扩充方法,不能扩展属性和成员变量(如果包含成员变量会直接报错)。
如果分类中声明了一个属性,那么分类只会生成这个属性的set、get方法声明,也就是不会有实现。
全部回答
- 1楼网友:鸠书
- 2021-11-08 02:30
最大的区别是匿名类别扩展可增加属性,类别扩展不可以(当然通过一些黑魔法可以实现同样的效果)。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯