Swift之家

Swift 静态方法

2019-04-30  本文已影响0人  小小土豆dev

Swift 方法分为:

实例方法 (Instance Methods) 

类型方法(静态方法)

方法是与某些特定类型相关联的函数。类、结构体、枚举都可以定义实例方法;实例方法为给定类型的实例封装了具体的任务与功能。类型方法与类型本身相关联。Swift 类型方法 Objective-C 中的类方法(class methods)相似。

结构体和枚举能够定义方法是 Swift 与 C/Objective-C 的主要区别之一。在 Objective-C 中,类是唯一能定义方法的类型。但在 Swift 中,你不仅能选择是否要定义一个类/结构体/枚举,还能灵活地在你创建的类型(类/ 结构体/枚举)上定义方法。

实例方法是被某个类型的实例调用的方法。你也可以定义在类型本身上调用的方法,这种方法就叫做类型方法。

类型方法语法

在方法的 func 关键字之前加上关键字 static ,来指定类型方法。类还可以用关键字 class 来允许子类重写父类的方法实现。

类型方法和实例方法一样用点语法调用。但是,你是在类型上调用这个方法

class SomeClass {

  func increment() {

    // 实例方法

  }

  static func someTypeMethod() {

    // 在这里实现类型方法

  }

  class func overridesomeTypeMethod() {

    // 在这里实现类型方法

  }

}

SomeClass.overridesomeTypeMethod()

class SubClass: SomeClass{

  override class func overridesomeTypeMethod() {

    // 在这里重写父类类型方法

  }

}

SubClass.overridesomeTypeMethod()

上一篇下一篇

猜你喜欢

热点阅读