美文网首页Swift之家
Swift 静态属性

Swift 静态属性

作者: 小小土豆dev | 来源:发表于2019-04-30 22:54 被阅读0次

Swift 属性按照 定义方式 分为:

存储属性

计算属性

按照 调用方式 分为:

实例属性

类型属性(静态属性)

实例属性:属于一个特定类型的实例,每创建一个实例,实例都拥有属于自己的一套属性值,实例之间的属性相互独立。

类型属性:可以为类型本身定义属性,无论创建了多少个该类型的实例,这些属性都只有唯一一份。

类型属性用于定义某个类型所有实例共享的数据,比如所有实例都能用的一个常量(就像 C 语言中的静态常 量),或者所有实例都能访问的一个变量(就像 C 语言中的静态变量)。

存储型类型属性可以是变量或常量,计算型类型属性跟实例的计算型属性一样只能定义成变量属性。

类型属性语法

在 C 或 Objective-C 中,与某个类型关联的静态常量和静态变量,是作为全局(global)静态变量定义的。但是在 Swift 中,类型属性是作为类型定义的一部分写在类型最外层的花括号内,因此它的作用范围也就在类型支持的范围内。

使用关键字 static 来定义类型属性。在为类定义计算型类型属性时,可以改用关键字 class 来支持子类对父类的实现进行重写。

class SomeClass {

  static var storedTypeProperty ="Some value."

  static var computedTypeProperty:Int{

    return 27

  }

  class var overrideableComputedTypeProperty: Int {

    return 107

  }

}

class SubClass: SomeClass{

重写父类里的类型属性:

static var subStoredTypeProperty ="Some value."

  static var subComputedTypeProperty: Int {

    return 27

  }

  override class var overrideableComputedTypeProperty: Int {

    return 207

  }

}

调用方法:

print(SomeStructure.storedTypeProperty)// 打印 "Some value."

SomeStructure.storedTypeProperty = "Another value."

print(SomeStructure.storedTypeProperty)// 打印 "Another value.”

print(SomeEnumeration.computedTypeProperty)// 打印 "6"

print(SomeClass.computedTypeProperty)// 打印 "27"

相关文章

  • Swift 静态属性

    Swift 属性按照 定义方式 分为: 存储属性计算属性 按照 调用方式 分为: 实例属性类型属性(静态属性) 实...

  • Swift’s use of SIL

    Swift 是一门静态语言,在 Swift 中声明的方法和属性静态编译期就确定了的,并且Swift具有更灵活的高级...

  • Swift 类型属性、类型方法

    简述 Swift中的类型(class、struct、enum等)属性和类型方法分别属于静态属性和静态方法。这种类型...

  • (实验)Swift 面向协议

    协议 swift中协议中可以声明属性,静态属性,方法,静态方案 子类如果继承了协议而不去实现其中的内容,编译就会通...

  • Swift 属性与下标

    swift中属性分为静态属性和存储属性,存储属性类似于OC中的数据成员,计算属性不存储数据 存储属性 存储属性适用...

  • 使用Swift创建Swift模块 - 静态链接库

    使用Swift创建Swift模块 - 静态链接库 使用Swift创建Swift模块 - 静态链接库

  • swift --1 extension扩展

    swift 中的扩展可以: 添加计算型属性和计算型静态属性 定义实例方法和类型方法 提供新的构造器 定义下标 定义...

  • Swift Mirror & Error

    Swift是静态语言,他不能像OC一样,直接获取对象的属性和方法,但是Swift标准库依旧提供了反射机制,用来访问...

  • Swift笔记(一)属性、析构、调用OC单例

    目录 swift属性存储属性懒加载属性计算属性属性监听类型属性 swift析构函数 swift调用OC单例类方法 ...

  • Swift 属性

    Swift 属性 在Swift中属性主要分为存储属性、计算属性、延迟存储属性、类型属性这四种,并且Swift还提供...

网友评论

    本文标题:Swift 静态属性

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