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

swift之存储属性和计算属性

作者: 无极战思 | 来源:发表于2020-10-14 20:34 被阅读0次

swift中的属性分为类:存储属性和计算属性
1.存储属性(包含实例存储属性和类型存储属性):把常量或变量的值作为实例的一部分,可以直接读写赋值。变量可用var或者let关键字定义,用var定义的属性为变量存储属性,用let定义的属性为常量存储属性

2.计算属性:不直接存储值,本身只起计算作用,没有具体的值,提供一个getter来获取值,类似于方法的功能

class Pet
{
    var age = 12
    var name = "小花"
    var kind = "法斗"
    //定义计算属性的getter方法,该方法的返回值由age、name、kind三个存储属性决定
    var petInfo:String{
         get {
                return "this is a pet which name is \(name),age is \(age), kind is      \(kind)"
             }
         set (newInfo)
           {
           }
         }
 }
   
   //创建一个实例
    let pet = Pet.init()
    print(pet.petInfo)//调用get方法
    //this is a pet which name is 小花,age is 12, kind is 法斗
    pet.petInfo = "this is a pet which name is laoqi,age is 2, kind is taidi"//调用set方法
    print(pet.petInfo)
    //this is a pet which name is laoqi,age is 2, kind is taidi

存储属性和计算属性比较:

  • 计算属性可以用于类、结构体和枚举,存储属性只能用于类和结构体。
  • 存储属性可以是变量存储属性(用关键字 var 定义),也可以是常量存储属性(用关键字let定义),而计算属性只能用var定义
  • 计算属性不直接存储值,而是提供一个 getter 和一个可选的setter,来间接获取和设置其他属性或变量的值

相关文章

  • 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/nagopktx.html