美文网首页
在 Swift 中定义静态方法,class / struct /

在 Swift 中定义静态方法,class / struct /

作者: Lebron_James | 来源:发表于2019-05-15 17:23 被阅读0次

在开发过程中,我们经常会遇到需要定义一些静态方法的需求。通常我们会想到用 classstruct 去定义,然而却忽略了 enum 也可以拥有静态方法。那么问题来了:既然三者都可以定义静态方法,那么我们应该如何选择?

下面直接给出答案:

  • classclass 是引用类型,支持继承。如果你需要这两个特性,那么选择 class
  • structstruct 是值类型,不支持继承。如果你需要值类型,并且某些时候需要这个类型的实例,那么用 struct
  • enumenum 也是值类型,一般用来定义一组相关的值。如果我们想要的静态方法是一系列的工具,不需要任何的实例化和继承,那么用 enum 最合适。例如,在 Swift 5.0 版本的 Alamofilre 的 Alamofire.swift 文件中,就是用 enum 来定义了各类请求方法。

另外,其实这个规则也适用于静态变量

想及时看到我的新文章的,可以关注我。同时也欢迎加入我管理的Swift开发群:536353151

相关文章

网友评论

      本文标题:在 Swift 中定义静态方法,class / struct /

      本文链接:https://www.haomeiwen.com/subject/zprmaqtx.html