Object-C Category和Extension的区别

来源:互联网 发布:淘宝店铺排行榜怎么看 编辑:程序博客网 时间:2024/05/01 20:49

参考:

http://stackoverflow.com/questions/3499704/difference-between-category-and-class-extension

http://www.tutorialspoint.com/objective_c/objective_c_extensions.htm

Category
用于给class及其subclass添加新的方法
有自己单独的 .h 和 .m 文件
用于添加新方法,而不能添加新属性(property)

Extension
Extension常被称为是匿名的Category
用于给类添加新方法,但只作用于原始类,不作用于subclass
只能对有implementation源代码的类写Extension,对于没有implementation源代码的类,比如framework class,是不可以的
Extension可以给原始类添加新方法,以及新属性

0 0
原创粉丝点击