美文网首页
Swift 计算属性和存储属性

Swift 计算属性和存储属性

作者: kimedison | 来源:发表于2019-07-23 16:12 被阅读0次
  • 计算属性,仅用于存储值

  • 存储属性,用于计算,可以理解为该属性的值通过 getter 获取,通过 setter 赋值,其中 getter 是必须的,setter 是可选的

作用范围:计算属性可以用于 类、结构体、枚举中,存储属性仅可以用于 类、结构体 中,换言之:存储属性不能被用于枚举中

声明:计算属性仅可以用 var 关键字声明,存储属性可以用 letvar 声明

举例:

  • 存储属性:
class cls {
    
    var a = 1
    var b = {
        return "hi"
    }()
}

a 是直接赋值的计算属性
b 是通过调用闭包获取返回值赋值的

  • 计算属性
class cls2 {
    
    let m = 10
    
    var c_store = 0;
    
    var a: Int {
        return self.m + 1
    }
    
    var b: Int {
        
        get {
            return self.m + 2
        }
        
    }
    
    var c: Int {
        
        get {
            
            return self.c_store + 1
        }
        
        set(num) {
            self.c_store += num
        }
    }
}

其中 a, b, c 都是计算属性

a 和 b 都是只有一个 getter, 其中 a 省略了 get{}
c 则是包括 gettersetter

相关文章

  • Swift:基础(二十)属性

    Swift 属性 Swift 属性将值跟特定的类、结构或枚举关联。 属性可分为存储属性和计算属性: 存储属性和计算...

  • OC的@property与Swift的存储属性/计算属性类比

    Swift中的计算属性/存储属性与OC中的@property   Swift中引入了存储属性、计算属性的概念,存储...

  • Swift进阶(三)--- 属性

    Swift的属性 在swift中,属性主要分为以下几种: 存储属性 计算属性 延迟存储属性 类型属性 一:存储属性...

  • 属性

    Swift 属性将值跟特定的类、结构或枚举关联。属性可分为存储属性和计算属性: 存储属性 计算属性存储常量或变量...

  • Swift 属性

    Swift 属性将值跟特定的类、结构或枚举关联。 属性可分为存储属性和计算属性: 存储属性 计算属性 存储常量或变...

  • Swift 属性

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

  • Swift5中的存储属性和计算属性以及属性观察器

    Swift 属性将值跟特定的类、结构或枚举关联。 属性可分为存储属性和计算属性: 存储属性计算属性存储常量或变量作...

  • Swift 属性与下标

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

  • 20170612基础知识-属性、下标、方法

    1、Swift中,属性分为存储属性、计算属性。 存储属性:存储数据,常量属性let,变量属性var,适用于类和结构...

  • Swift属性

    Swift属性分为存储属性,计算属性。或者分为实例属性,类属性。计算属性不存储值(像是一个计算方法),枚举没有存储...

网友评论

      本文标题:Swift 计算属性和存储属性

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