小编典典

如何为类别创建swift类?

swift

我想创建我现有的swift类的类别,但是IDE中没有选择这样做的选项。

知道在快速项目中是否存在类别?还是如何在Swift项目中实现类似的功能?


阅读 337

收藏
2020-07-07

共1个答案

小编典典

在Swift中,您可以用来Extensions向现有的类,结构和枚举类型添加新功能。

它们在一些方面与Objective-C类别有所不同,主要是:

  • 他们没有名字
  • 您不需要显式导入扩展。如果定义扩展以将新功能添加到现有类型,则新功能将在该类型的所有现有实例上可用,即使它们是在定义扩展之前创建的。
  • 如上所述,它们不仅适用于类,而且适用于其他类型。

就目前而言,扩展程序可以:

  • 添加计算的属性和计算的静态属性
  • 定义实例方法和类型方法
  • 提供新的初始化器
  • 定义下标
  • 定义和使用新的嵌套类型
  • 使现有类型符合协议

声明扩展的基本语法如下:

extension SomeType {
    // new functionality to add to SomeType goes here
}

有关如何在Swift中使用扩展的更多信息,请查阅Apple的文档

2020-07-07