swift学习之set和get方法

在swift 中get,set被称之为“计算属性”,它用来间接获取/改变其他属性的值。

  • set 和get 是针对 计算变量(Calculated property ) 是不可以赋值的
  • 普通的存储变量(storage property)才是可以赋值的

set和get的写法:

   var _name:String?
    var name:String?{
        get{
            return _name;
        }
        set{
//            只要外界通过.name给name赋值,就会把值给newValue
            _name = newValue
        }
    }

在开发过程中不建议这样使用,首先需要定义两个属性,很麻烦。

推荐使用这样的方式实现

 var gender:String?{
        didSet
        {
            NSLog("已经改变的时候", []);
        }
    }

除了didSet是已经改变之后的操作,还有willSet是将要改变的时候

只是重写了get方法,我们称这个属性为“计算性”属性,也就是只读属性

注意:计算型属性,不占用内存空间

//“?”是可以省略的
  var age:Int?{
        get{
            return 18;
        }
    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容