将来跳槽用三方解析

iOS Extension详解,及与Category的区别

2019-02-21  本文已影响251人  num_one

Category详解

1、 什么是extension

extension被开发者称之为扩展、延展、匿名分类。extension看起来很像一个匿名的category,但是extension和category几乎完全是两个东西。和category不同的是extension不但可以声明方法,还可以声明属性、成员变量。extension一般用于声明私有方法,私有属性,私有成员变量。

2、 extension的存在形式

category是拥有.h文件和.m文件的东西。但是extension不然。extension只存在于一个.h文件中,或者extension只能寄生于一个类的.m文件中。比如,viewController.m文件中通常寄生这么个东西,其实这就是一个extension:

`@interface ViewController ()`

`@end`

当然我们也可以创建一个单独的extension文件,如下图:

1055199-56cba3e296a4bf59.png 1055199-d6e6a0b1e95e4e80.png 1055199-753211c1b4ca69d6.png

UIView_extension.h中声明方法:

1055199-fe05e6b5e89e4d15.png

导入UIView_extension.h文件进行使用:

1055199-a392389b341fc944.png

注意:extension常用的形式并不是以一个单独的.h文件存在,而是寄生在类的.m文件中。

3、category和extension的区别 Category详解

👏👏👏欢迎大家加入群组(IT_大前端技术交流群),技术交流群
IT_大前端技术交流群
上一篇 下一篇

猜你喜欢

热点阅读