为什么我们需要在 IOS 中使用类别?
Why we need to use category in IOS?
我刚刚开始在 ios 开发应用程序,我已经阅读了很多教程,但我仍然不满意该教程。
我想知道理论上为什么我们需要使用类别以及有什么好处。
引用自
http://www.g8production.com/post/37787310116/categories-in-objective-c-how-to-extend-methods
和
Difference between Category and Class Extension?
类别 和扩展允许您扩展现有 class 的 功能 而无需子 classing (不继承任何东西)向现有 class 添加功能,甚至是您没有源代码的功能。
类别允许您向 class 添加(仅)方法,方法是在接口文件 (.h) 中声明它们并在实现文件 (.m) 中定义它们,就像在基本 Objective-C class。遗憾的是,类别无法为 class.
声明额外的实例变量
现在这个声明的方法成为分类的一部分-class!!!
您可以添加到分类中的类别数量没有限制-class,但每个类别名称必须不同,应声明和定义一组不同的方法。
编辑
类别
-> In objective c, when you want to add some more functionality to a class without inheritance, you simply use category for it.
-> Category use to add new method not properties
.
Class 分机
-> In objective c, when you want to make behavior of some property private you use class extension.
->mainly for properties.
类别允许您将方法添加到现有的 class——甚至是您没有来源的类别。
类别是一项强大的功能,它允许您扩展现有 classes 的功能而无需 subclassing
使用类别的好处。
如果您使用类别,则无需记住您为该特定功能创建了哪个自定义 class。只需使用类别,您就可以向现有 class 添加新功能,并且通过创建相同 class 的对象,您可以访问它。
在我的一个应用程序中,我想更改默认字体。因此,我没有在有文本的地方不断更改字体,而是设置了一个类别,将默认字体更改为我想要的字体。
我刚刚开始在 ios 开发应用程序,我已经阅读了很多教程,但我仍然不满意该教程。 我想知道理论上为什么我们需要使用类别以及有什么好处。
引用自
http://www.g8production.com/post/37787310116/categories-in-objective-c-how-to-extend-methods
和
Difference between Category and Class Extension?
类别 和扩展允许您扩展现有 class 的 功能 而无需子 classing (不继承任何东西)向现有 class 添加功能,甚至是您没有源代码的功能。
类别允许您向 class 添加(仅)方法,方法是在接口文件 (.h) 中声明它们并在实现文件 (.m) 中定义它们,就像在基本 Objective-C class。遗憾的是,类别无法为 class.
声明额外的实例变量现在这个声明的方法成为分类的一部分-class!!!
您可以添加到分类中的类别数量没有限制-class,但每个类别名称必须不同,应声明和定义一组不同的方法。
编辑
类别
-> In objective c, when you want to add some more functionality to a class without inheritance, you simply use category for it.
-> Category use to add new method not properties
.
Class 分机
-> In objective c, when you want to make behavior of some property private you use class extension.
->mainly for properties.
类别允许您将方法添加到现有的 class——甚至是您没有来源的类别。 类别是一项强大的功能,它允许您扩展现有 classes 的功能而无需 subclassing
使用类别的好处。 如果您使用类别,则无需记住您为该特定功能创建了哪个自定义 class。只需使用类别,您就可以向现有 class 添加新功能,并且通过创建相同 class 的对象,您可以访问它。
在我的一个应用程序中,我想更改默认字体。因此,我没有在有文本的地方不断更改字体,而是设置了一个类别,将默认字体更改为我想要的字体。